Grains keep for a year or so and only if you have good storage for it, something that requires a lot of space and logistics for very high magical yields.Grains keep and ship well. The romans, using no magic whatsoever, kept Rome supplied in grain, feeding a 1 million population.
And grains only literally ship well. When you do not have ships then moving large amount of grains will be very problematic. The only reason why Rome could grow so large is because of the Nile and the easy shipping from Egypt.