If the plan is a fix once and for all, then that should be changed too.  It could be set so that it is at least some multiple of the max block size allowed.

Well, but RAM is not infinite :-) Effectively what these caps are doing is setting the minimum hardware requirements for running a Bitcoin node.

That's OK by me - I don't think we are actually going to exhaust the hardware abilities of any reasonable computer any time soon, but still, having the software recognise the finite nature of a computing machine doesn't seem unwise.
 
That system can send a block of any size.  It would require a change to the processing of any merkleblocks received.

Not "any" size because, again, the remote node must buffer things up and have the transaction data actually in memory in order to digest it. But a much larger size, yes.

However, that's a bigger change.