I have an idea that can reduce the blockchain size by having address maintenance fees. Each address would have a maintenance fee deducted from it every block.
The maintenance fee could be 25 satoshis per block. This means 3,600 satoshis per day. If you have 0.01 BTC (1 million satoshis) it will last 277 days, so it is not a worry.
These satoshis could be used to pay a block subsidy so in the future when the reward is set to get lower and lower, there is still an incentive for miners to mine.
There is already an incentive for miners to mine, more transactions which have fees in the future will replace the block reward. Please read the white papers before commenting on the bitcoin protocol.
Also this is a horrible idea first it wouldn't reduce the size of the blockchain, it would in fact make it bigger since you have to update the balances. Also once "transaction spam" (which is not the correct wording) is in the blockchain that is the problem.
This is also penalizes people for doing paper wallets, which is a very secure way of handling saving coins, so why would you want to penalize them for doing something right?