Growth mechanic currently is based on four things:
- Faction prestige
- Number of cities
- +x growth buildings in a city
- Available food
Faction prestige is divided by number of cities. Thus, 5 faction prestige, 2 cities results in +2.5 growth per city. (The prestige is global growth bonus divided equally to all your cities). Each +x growth building gives additional city growth for the city it is located in. So, if you have inn in one of the two cities, its growth will be 3 (2.5 + 0.5 from the inn). Finally food is hard limit: if you have 180 available food for a city, you can not grow past 180. The only meaning food currently has is this hard limit.
I still think it is a good idea to have +x * excess food type of buildings. In the above example if the city size is 80 you will get the +3 growth (2.5 from prestige, +0.5% * 100 = 0.5 from the inn). If the city size is 170, you will only have 2.55 growth (only 0.05 from the inn). The effect would be that small cities grow faster, large cities slower. In the end game, when you have lots of excess food for small cities, they will grow really fast.
I can see the problem: it is easier to get cities going, as they grows faster when they are small. So, this might encourage city spamming. On the other hand, if you can get all the available food resources linked to your main city, it will grow really fast. Say, you get 5 additional grain for your main city, it will easily get over +5 growth from the extra food in the late game.