All the balance issues in mechanics aside, don't under estimate a city lords ability to fight back. Is your realm not helping your city remain profitable? Jump ship. Only city? Destroy your smithy and other important buildings specialized to the region type as "cutting expenses" to afford high food prices. Might be some drastic measures, and might not work in the average scenario, but the point is cities can and should fight dirty too.
If a rural region lord is constantly jacking up prices of something you need, remind him what he needs. Hell, since somebody mentioned sponsors often being city lords, take some diplomacy into account. Make those lords pay for the service, or lack of it. Keep your army back while a neutral realm loots the region and sells you the food at a fair price- if the lord isn't helping you, who the hell cares if his assets are damaged?
Get a religion to back you. "These lords in Rural Swindler Regions are starving the faithful that I house in my city. Help punish them by throwing them out; feel free to claim the region yourself with my endorsement in exchange for cheaper food"
Just like realms are limited in nobles when selecting lords and end up with greedy food barons, do you think they'll do better with city lords? Do you think those same greedy barons will give up their income to buy other lords food? Do you think they want a duke taxing them all to accommodate food prices?
All sides of the arguments listed on this thread have merit, but I'm surprised many aren't proposing any sort of IG reaction. Since food came about there have been some complaining about BATTLEMaster shouldn't have so much resource management. Take advantage of the difficulties in resource management and BATTLE over it.