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.
...
I don't see why. The list of nodes is not that long. When a neighbor pops up, note its identity, add it to the list, along with something about when it is active, and tell the remainder of the network about it. When a node is acknowledged by N other nodes, it gets verified and added to the list of known nodes. If its uptime is greater than X%, for Y days/months, it becomes eligible for a reward.