It might sound like a crazy idea
but why not make generals gain exp of their own,
and when they level up give them extra stats:
damage, hit point, troop number, etc
just an idea