This could easily be fixed by having a combination of a fixed subsidy based upon number of registered candidates plus a per-vote subsidy for existing parties during an election cycle.

In non-election years, existing parties have ongoing expenses which are directly related to the number of MP's they have.    The Per-vote subsidy is not just for election periods - it's for maintenance during non-election periods.     Again - the disparity in riding populations or Urban vote vs Rural vote bias could be evened out by having a fixed amount per MP with the per-vote subsidy combined.

Far less money than tax deductions and helps ensure that elections are not about which party raises more money.     At the very least, tax deductions for political donations should be eliminated entirely.    There is no good argument why political donations are treated like charity donations.