You are never going to get human consensus on an unlimited block size to the point where it isn't controversial. Just isn't going to happen.
The good news is that Bitcoin is not software. It is a protocol

. Of course you have to get people to agree to use your fork but that is another thing entirely. Errr, consensus?
The problem is that currently Bitcoin (the protocol) is conflated with Bitcoin Core (the software). Until this state of things changes we are de facto running a centralized system, with veto power in the hands of a few selected ones. And this is what bothers me the most.
It is not a protocol that is amenable to successful modification by a marketplace of different implementations doing different things (with respect to the consensus rules). The result of that is chaos and likely failure.
Perhaps it is possible to build such a protocol, and some ideas along those lines have been discussed here and elsewhere, but there is a lot more to that than just multiple implementations.
Then again the argument could be made that we already have such a protocol/marketplace and it is called altcoins. But if you want to stick with Bitcoin itself, you need more to successfully make changes without human consensus.