I don't think everybody pays the minimum if blocks are not full. It is purported that there is a massive backlog of transactions, and yet miners are still submitting partly populated blocks, and even empty blocks. Maybe we should consider ways to move part of the mining operations to the nodes who are paying the transaction fees.
If there was a way to force a miner to fill up the block if the tx are available, probably good to do that, but since the unconfirmed tx are unconfirmed, it would take some pretty tricky mechanism to create such a feedback process.
Something like an unconfirmed tx verifying set of peers, which then flag a mined block that could have included more tx. Unclean and messy, but could be done.
OK, we now have N of these peers spitting out feedbacks on the miners? But how do we link a miner of one block with another? Cant a miner just use a new address for each block they mine?
So now we need to follow where the funds go from the coinbase. How long to wait? And what exactly do we do once we find a misbehaving miner? His crime was to leave money on the table as it was more important to submit the block for the blockreward than the paltry fees.
Until the blockreward is much closer to the sum of txfees, it would take some horribly complicated system that problem wont ever really work. So going to 3 minute blocks would be a cleaner solution for this than any sort of reallocation system