Create and maintain a list of all the bitcoin nodes that have been active for some period of time, maybe a year or some other time period. Node owners must have a certain amount of time invested before becoming eligible for payments.
Impossible to do in a decentralized way. For starters all the full nodes can not know about all other full nodes ever, they also can't continuously check whether all the candidates in that list are active at all times.
Most importantly how are you going to distinguish a fake full node with a real one? It is actually very easy to fake being a full node without actually running one. If you provide the incentive, the network could be flooded with them.
It's not just about running a "fake node". It could also be a user/group of users who are running multiple nodes and performing a Sybil Attack/51% Attack on the the network. It's easier to do at low cost, without POW to secure the network from such attacks.
I believe to learn more, Bitcoin.org's documentation is a good place to start,
https://developer.bitcoin.org/devguide/block_chain.htmlPlus replacing POW would be very stupid. Ethereum might learn from this, the hard way.
Shower thought. If Ethereum POS wouldn't be enough to secure the billions in their blockchain, and not enough to secure it as a global base layer for tokens, I believe they will probably need Bitcoin to secure their blockchain, and that probably creates more and more demand for Bitcoin transactions when block rewards become less and less after each halving.
