I think the way to prevent an army of all elite units would be to let the function of the elite unit be proportionate to the representation in the army.
One of the key factors in making an elite unit fight better is NOT training, but that it attracts the best and the brightest. Thus, in building "elite" units, the more you build, the less effectively they should fight as a whole.
So if your elite units are like the Marines, you'll have a lot of units relative to your army, but they will only fight marginally better.
On the flip side, if you have an ultra-elite unit like the green berets, it would probably only make one unit in your army, but would fight significantly better than normal units.