Explain why it would be "extremely unpopular move and suicide for a cryptocurrency"?, when a miner producing an empty block when there is outstanding txs is stupid enough itself.
As for why developers cant mandate what goes into a block through network rules via a hard fork, bitcoin is an open transaction system and any attempt to strictly specify which transactions must go into a block in the reference core implementation would be futile. Not only does every node have a different mempool consisting of different transactions (it's impossible to sync all nodes to the same set of transactions in time and space), but enforcing certain transactions is actually creating a system with an unintentional censoring, prioritising and filtering of transactions in the world. The current system works off transaction fees as the incentive to choose transactions based on the reward making them more worth mining and indirectly creates a type of consensus without mandating order. Either way, the fact that no 2 mempools will be alike means it would be impossible to mandate anything anyway. Even empty blocks, as much as it pains me to say, must be allowed since theoretically there is a time and place where there are no transactions (though unlikely in bitcoin I agree) but additionally when a bitcoin node is restarted it has no transactions until they're gathered from the network or some are loaded from disk (in 0.14+). Even the ones loaded from disk may be all old and no longer mineable if enough blocks have passed since the node was restarted.