Hikari makes some food called Fancy Guppy or Micro Pellets. Either of those serves as great guppy food. I'd steer clear of flakes just because it can cloud water and dissolves rather quickly...
Edit: While the very minimum for guppies is 5 gallons, they should be fine in a 2.5. I'm not trying to sound like some stingy person who insists bettas can be kept in a .5 gallon "tank" with only weekly water changes... >> but I think if you treat the guppy like a mini-betta, the whole bio-load thing and such can work. As far as room goes for swimming...
Female guppies get a LOT bigger than males, mostly so they can hold all those babies. They are livebearers, anyway. X_x So I think it'd be better (and more colorful) to get males.
I should add: some males can get pretty big, too. It depends on genetics. My granpa has a guppy tank, and all the females get about 3.5 inches long at only 3 months old, which is crazy
for a guppy. Start with the tinier ones first. If you happen to get some with a gene that makes them larger, you might want to go ahead and move them to a 5 gallon.
In any case, while they're very active and "the more room, the merrier", starting out, they should be alright in that.