This falls apart a bit if providing better food costs more. Restaurants with better food may earn more revenue all else being equal but their costs may be higher. People are willing to pay more for the same quality of food in a better location. It makes sense for a the restaurant with worse food to outbid a restaurant with better food because the location is more important to them and they are allocating more money towards towards rent rather than food quality so they have more to spend.
> People are willing to pay more for the same quality of food in a better location
If they know. West Coast bagels have been almost consistently garbage until very, very recently because the people willing to pay up for a great bagel weren't able to pick out those that were freshly boiled. Combine that with the economics of bagels prohibiting boiling and baking to order (hmm...) and you wind up with the necessity of toasting old (but not stale) bagels.