My view is that the association is silly. The max_blocksize rule was added by Satoshi after the system was already running, in order to remove an attack vector via spamming of the transaction queue, until such time as a more elegant solution could be found. It was never even intended to be a permanent rule. The only reason that a "hard fork" might be required to raise or remove that rule is if some people don't agree that we should raise the limit. Complete consensus is required to avoid a hard fork, and a hard fork is the last argument of otherwise independent bitcoin users.
Ok, I understand what you mean, I should not use "hard fork", non-backward-compatible client upgrade is the better description. You can have such kind of upgrade without causing a hard fork, if majority of users agreed
Forcing a hard fork in order to alter some aspect of the network doesn't even mean that you'll succeed in altering your desired aspect, but the resources required to fight the good hard fork fight are quite high, and completely unrecoverable. Yet, if a minority of users and miners decide to make that fight, there will be a blockchain fork, and the majority of the losses will fall upon the minority group until they can either muster up the resources to dominate the network or quit the fight and take their balls and go home.
It's not necessary to be a fight, two forks can co-exist since they serve the different interest from different users, its just those pre-fork coin can be spent on both fork, and it benefit the early adopters again (Pre-fork coins will worth more, people will try to get as much coin as possible before a fork happened
)
So, theoretically, all that is needed to change the 21 M BTC limit is to get everyone to agree to that change; but that isn't something that is up for debate here. No matter who or why, there is no way that a consensus to change that metric in Bitcoin is going to happen without a blockchain fork; and it would be a harsh fight. That number isn't so arbitrary, unlike the max_blocksize rule.
It does not matter it is MAX_BLOCK_SIZE or nSubsidy, as long as they can be changed through a software upgrade, there is a POSSIBILITY that a future software upgrade will change some bitcoin characters. This possibility is the biggest risk and uncertainty of bitcoin
I remember that Gavin said he worried about a fork when block reward drops from 50 to 25 coins last winter, since there was someone coded a client with 50 coins reward forever. But it seems that fork had some technical problems and was not able to maintain the stable block generation, so it ended without many people knowing of it