bitcoin has been around for 8 years with 1 MB max block size and the blockchain size is already above 100 GB and that is proving some difficulties for many people to run a full node. when you can't have enough distribution among full nodes and it becomes difficult, Full nodes will be run by only services, miners, ... which means centralization.
You're partially right. Bitcoin needs nodes, but the solution would be to make it profitable to run a node. Just like Satoshi intended it to be: every node also mines for blocks.
Instead, Bitcoin does the exact opposite: miners can join a mining pool, which allows them to mine blocks without even downloading the blockchain by themselves!
Miners lead to centralization, caused by massive dedicated hardware and cheap electricity at certain places.
100 GB isn't a problem. For $1000, you can buy 10-100 times that amount of disk space. Blocks now produce $90,000 per hour for miners. That would be enough money to setup a large node
per minute, resultling in half a million nodes per year. It's enough money to give every Bitcoin user a dedicated computer running a full Bitcoin Core client. It's only the fact that this computer can't compete with dedicated mining hardware that stops this.
With all the delays in just increasing block size, now even up to the point were nodes are said to be the limitation, I'm more and more blaming miners for this.
They are the ones profiting from high fees, and their short-term financial interests damage Bitcoin's long-term future.