It's really simple. People want low prices when they travel. Some people do a lot of traveling and will pay a bit more in return for a more comfortable seat.
The airlines response: low prices. Debundling what used to be included. Maintain a "first class" section with slightly more room for the people who pay a bit more overall in the customer-airline relationship.
Debundling food is a good idea. Everyone wins. You want it, you pay. You don't want it, you aren't paying for it. What could be simpler?