I think it could be possible to change bitcoin code to add more bitcoins. I mean blockchains. If one blockchain is not enough, then maybe we could have more?
Current bitcoin blockchain could be bc1. Because there is high demand for more transactions, we could add another blockchain bc2 that have parallel transactions.
You could have accounts in wallet in different blockchains and could see which one is less used to pick one you would like to use. Ofcourse there should be a way to allow to move bitcoins between blockchains.
What about rewards for miners? I think bitcoins should be split between current count of blockchains to not change inflation. If we have 50 btc as block reward, with multiple blockchains reward would be 50/(blockchain amount) plus fees. But there would be (blockchain amount) more blocks per 10min than now.
I am not core developer and because of that I don't know if it is 100% doable but if it would, we could scale blockchains that way forever just by adding another ones until we find something better
And another good thing about that woud be that you could have only one of the blockchains on disk and not have to save all transactions in all blockchains ...