At some point Bitcoin-Qt will change such that it's able to delete old blocks. The details are still being worked out, but most likely you'll be able to say "Use up to 10 GB of disk space" and it will never use more than that. Nodes will broadcast how much of the chain they have and are able to serve. New nodes that are starting from scratch will have to search out other nodes that still have the full chain and sync from them, but any node that just wasn't online for a while and needs to grab the latest parts of the chain will be able to use most of the others. By controlling disk space usage, you can also indirectly control bandwidth usage (you can't upload data you don't have).
What happens, if in a hundred years from now, almost everyone is using the "Use up to 10 GB of disk space" feature? All the old nodes can probably keep up, but new nodes starting from scratch won't be able to find a node with the full chain, or have difficulty doing so.
Or is that a problem we shouldn't worry about for the next 50 years? I can see full nodes "centralizing" then, but it's possible that there will be entities or countries that will maintain a full node independent of other full nodes.
Right now, everyone running QT or the reference client is a full node.
I can see a far distant future where no normal or regular individual has a full node (except for the geeks / enthusiasts / those who can afford), but there will still be at least maybe 1 full node per country with the bigger countries having several, maybe one per university or one per "department" or "agency" or one per "private corporation".
I mean, large companies already maintain servers for all sorts of purposes. What's another one just dedicated to just bitcoind with 500++ gigs of space (or whatever is the then current capacity of hard drives or equivalent)?
I disagree because we are forgetting about the past in a very big way. While the size of the blockchain is growing at an exponential rate the amount of resources required to store and transmit data is
falling at an even greater exponential rate so the ability of running a full node will remain within the financial abilities of regular individuals that choose to for years to come. I actually expect the number of full nodes to increase over time. They will for the most part lie with those who choose freedom, Free Software and GNU / Linux over those who choose subservience, DRM, propriety software, and locked devices such as those running IOS and recently some running Microsoft Windows.
Let us instead of trying to look 100 years into the future take a look at 100 years into the past, and ask the following question: How much would it have cost to send 1MB of data over the telegraph network in 1913? At say 0.50 USD per 10 words
http://eh.net/encyclopedia/article/nonnenmacher.industry.telegraphic.us, and let say we can encode 4 bytes per word. This gives us 250000 words or 12500 USD in 1913 dollars. This was way outside of the budget of the average person, but something a millionaire (billionaire in today's USD) such as J. P. Morgan
http://en.wikipedia.org/wiki/J._P._Morgan could have afforded. Today of course sending 1MB of data is so close to free that it is very affordable to even some very poor people.
There is a real danger here for Bitcoin it that many for fear of loosing the decentralized nature of Bitcoin to a growing blockchain, will cripple Bitcoin with arbitrary limits, while ignoring the real threat to the decentralized nature of Bitcoin. This threat is that in the future regular people will not be able to run a full Bitcoin node because their computing devices are locked down and infected with DRM. Cost will not be the limitation in the future DRM will. Even today I can purchase a computer perfectively capable of running a full Bitcoin node and pay for it with Bitcoin at FreeGeek
http://www.freegeekvancouver.org/ for way less than the price of an iPad or Windows 8 RT "computer".