As the blockchain grows in usage, it will also grow in size as well. This leads to diminishing incentive to run a node. While this problem may be slightly mitigated by the rolling node offered, it still stands to reason that there is absolutely no reason for anyone to start a node. Especially with Tezos Giganode, and the various smaller nodes hosted by tezos chain developers like Cryptonomic, SmartPy, TzStats, and others.
For the benefit of the network, I think it would be best to divide storage costs on the network among people running nodes. This would incentivize more people to host tezos infrastructure which is vital for the strength of the network.
Implementation details are left as an exercise to the interested reader.
While that wold make the node more efficient, it wouldn’t necessarily incentivize people to run their own nodes, which is my primary concern. I think there should be some incentive, even if it is minor, as there are a lot of things that I’d rather use my computer for than Tezos Nodes.
Bakers already get rewards for baking, which is incentive enough for them running their own nodes. But for regular people, I can’t think of a good reason to run their own nodes.