And this is a big problem. Blocks need to be generated for transactions to be able to be carried out. If there is no profit in generating blocks, no blocks get generated -> no transactions are possible.
Yes, this is an extreme case. But with the current design the network will always produce 1 block every ~10 minutes, guaranteeing a consistent speed of transactions.
And that's why miners then will be getting paid mostly in transaction instead fees I guess. To remain safe the network needs to keep enough parties interested in competing to do proof-of-work. Maybe the inventors envisioned that a large number of transactions per block in a mature network would generate sufficient pay-off even with low fees per single transaction.
Yes, you are correct. This is the way the current system works / will work.