TLDR; We do not need to retain all data forever.
We must not fix this yet, but some people hold the view that data must be retained forever, and the chain will grow forever, as a negative, or even making bitcoin impossible in the long run. Therefore it is good to have this as a counterargument.
Here we go: The important data is the unspent transaction outputs set. If we have that, we can transact as usual, and create a new utxo set for each block.
When we decide what is bitcoin, we do not start from the genesis block. That block is the first block only because satoshi said so, on an insecure mailing list. Rather we start from the other end, the recent best block. This has some security, only because we know that the miners don't just waste their hashing power. The last minus one block has more security due to the block that is mined on top of it. The last minus two blocks has even better security, and as a rule of thumb, last minus six can be considered almost absolutely safe. It is the depth where the block is buried, that decides its degree of bitcoinness.
The data that we are interested in: What output contains a specific bitcoin fraction, can be defined to be either the result of all transactions since genesis, or it can be the utxo set itself.
Now if we could prove that a specific utxo set is secure to the same degree, we need only that, plus later blocks. So if we have the blockchain plus a secure utxo set for every block, we could really start at any place in the chain, not from genesis.
To have the same security for the utxo sets, we need only hash it and place it in the block. So if the block is good, so is the utxo set.
Don't worry about the added diskspace needed, many optimizations are possible. We could do it for every thousand blocks, for every week, or even every year.
How long do we need to retain transaction data? We can for instance use the same standard as most economic institutions use: ten years. So if you regard a transaction as safe when buried under six blocks, after ten years it must be even safer. If the banks and the card companies, every business and every defunct business can hold data for ten years, so can we. If they can discard older data, so can we.
This means we can just let older data die and go to bitheaven, and bitcoin can churn forever.