the easiest way to prevent killer stacks, is to implement a supply system. If an army is going to move, then they will need a supply of food, goods, and weapons/tools.
Lets say you include supply wagons.
You can have it so your army can hold supply for 2-5 turns, before needing more supply in the form of wagons.
And new wagons would then be continually sendt from your cities to feed your army.
Well in that case a single killer army would not be possible, and you would have to spit up your army, because you would need to protect those supply wagons, or see your units die out from starvation. The raider could just do hit and run attacks.
Supply could be used as an upkeep mecanism. Each tile will ofcourse offer some food, where there is habitable land for units to feed on. If used as an upkeep mecanism supply should be needed when they are in cities too, but the wagons may not be needed.
This idea will limit the size of an army!
Also do not limit the singletile army size to 8 units. If you want to limit the army size that a single tile can hold, use a population limit instead! That way cheap massable units might accually be useful in the lategame.