If you want really widespread distribution of full nodes, you need to make a consumer-friendly distribution of the node software, and package it and keep it updated in a way that regular users can run it and forget it. This same convenience introduces a centralization problem that obviates the whole point of running a distributed ledger.
This is a point so obvious I hesitate to make it, but I've learned that in blockchain territory there is no flaw too obvious to point out.