to balance a lot of factions is easy, just give them small advantages and disadvantages, like one faction has a very good infantry, but a very low harvesting time.
if every faction has advantages and disadvantages like this, things would be balanced.
EX: suppose that's there are 5 factions: x, y, z, a and b.
every one of them have advantages that overcome the other and disadvantages that are overcomed by the others, so for a certain type of map or strategie, faction x could rule, while faction b sucks, but for other type of map or strategy b would rule, while a would suck.