If a miner is payed per block found, why not scrape the bottom of the barrel and full up blocks with 0 fee transactions? You would still be getting coins for blocks found just not the fees. The bonus would be no competition on finding blocks. Win/win for everyone...
I think you are assuming that miners who are picking low fees transactions are not competing with anyone which is incorrect. Mining is not progressive(i.e your chances do not increase the more you try), it is independent chance of success for every try. You still have the same chance to find a new block, regardless of the transactions you pick. So, there is no bonus advantage.
Therefore, it is always useful to pick high fee transactions than the low fee ones.
You seem to be under the false impression that miners create blocks based on approving the most transactions the fastest. So you've concluded it would make sense to just fill up the block with zero fee transactions and claim the block reward. It doesn't work like that at all.
Miners solve a block via a cryptographic process that has nothing to do with confirming transactions. They get the same reward at the same likelihood despite what transactions they choose to approve. Solving the blocks is part of the game theory that makes bitcoin work as an autonomous and trustless entity. It is called "proof of work" and ultimately allows miners who didn't solve the block to take at face value the word of the miner that did.
Please see What is mining? That resource should clear up where transaction processing and block solving begin and end.
Because block solving and transaction processing are not connected, transaction fees are subject to classic supply and demand laws. Users decide what fee to send, so miners will pick the higher fees first.
Your confusion may also come from the fact that blocks do have a size limit, which translates to an average transactions per second limit. If there were no transactions, miners would still solve blocks and report only the coinbase transaction, the one that generates the reward bitcoins. This is because the miner found the hash, not that they filled up the block.