You don't necessarily have to sacrifice something (If done right). If we take increasing blocksize vs SegWit.
SegWit have no downsides while increasing the blocksize could give us centralization to a certain degree as the blockchain size increases over the years.
We're far from having Bitcoin 2.0 but BIPs are definitely being put on the table and constantly being worked on so with time, the limitations will you're talking about will start to fade.
SegWit came with the effective blocksize increase, but it was small enough to not cause any harm. The main goal of segwit wasn't scalability though, it was a fix for signature malleability that now allows developers to work on new features more easily.
At this point, as masterfully as Bitcoin was created, it has some limitations of course.
My question is: Could it be done better, or is it just matter of trading one feature for another (i.e. speed for decentralization)?
If you are suggesting that Bitcoin is inherently flawed and that there's a need for a brand new protocol, than look at altcoins - many of them are promising exactly that with their hashgraphs, tangle, DPOS and other buzzwords. The fact that they have no users and are plagued with bugs and other problems only means that it's too early to bury Bitcoin. It might very well be that there can be nothing better than Bitcoin's protocol.