The general problem with this type of reasoning is that you are treating the behaviour of entities on the network in a static stimulus/response manner. In reality people will change their behaviour as circumstances change. If some problem arises in future, people will adjust their actions, and can update the software they run.If everyone is running BU, the slow nodes are going to be pruned. And then a month later, the *new* slow nodes are going to be pruned (though they used to be faster than the slowest 10%, the slowest 10% is now gone so the node suddenly finds itself in the slowest 10%). And the miners have incentive to do this so long as there is more money to be made by getting more fees.
Also, there are countervailing incentives to keep block sizes limited. For example, miners have an incentive to coordinate to limit block size somewhat to try to maximize total transaction fees.
In a decentralized community, people can find ways to coordinate their action voluntarily without central controls, if there are benefits to doing so. One likely outcome would be the emergence of "Schelling Points" of agreement. For blocksize, for example, nodes might converge around block size limits of 8MB, or 20MB, BIP101 schedule, or some other limit, depending on the circumstances at the time.