IMO, those who makes profit from bitcoin will have the biggest incentive to setup enterprise level full nodes: Exchanges, mining pools, mining farms, ASIC producers, wallet providers, payment processors, etc... even those heavily invested in bitcoin should have some full node setup to indirectly support their investment
I am invested and do indeed run a full node despite the lack of compensation. If I sell off my investment then I will stop unless it is made to be worth my while.
*If* I were going to be compensated for running a full node then I would gladly pay other full nodes for the services they provide me. If the full nodes are just going to pay each other then that is way less interesting than having SVP clients, etc., pay for services.
Ah, how about if we "enhance" the code to limit the amount of services provided proportional to the amount of services received?
People have the option to carry many different credit cards. The card issuing businesses make a point of giving away their payment tools. History tells them that people will make use of their credit cards.
Ignoring the desirability of using credit or credit cards, making Bitcoin easy to use and removing as many cost barriers to entry as possible should always be a priority. Any trade-offs on free to use or very low cost to use need to have a good reason to exist.
Who knows, splitting transaction fees between nodes and miners might be an option. I doubt the original design considered that the function of running a node would be separated from mining, so it would be an option to realign the original design to some extent.