If the AI knows that you are the aggressor, then it should be expecting an invasion, especially if you are of comparable or greater strength. It should put out recon parties to detect your approach. It should anticipate what cities you are likely to target based on its knowledge of which cities you have spotted and determine which cities are more important to defend based on output and proximity to your territory. In general, the AI should not try to pursue a war on multiple fronts. If a stronger aggressor declares war on them when they are already at war, they should try all means to end one conflict, or gain allies in their conflict to even the odds. If they are outmatched, focus on defense and make the aggressors pay for every inch of ground. Spawning a group or two to hit you from behind in order to distract and delay your attack would also be wise.
As far as attacking goes, the AI, both individually and as allied groups, need to be able to identify targets, assemble forces and time simultaneous attacks. Here is where it would be nice if the tactical battles could incorporate units in adjacent squares. Two (or more) allies converging to cooperatively attack your strongest armies or cities would be very evil. You would almost need another level of strategic AI for alliances above the individual player's decision making processes. Diversionary tactics are also very useful. Attack city A to draw forces out of position, then move in the main forces to attack city B. Of course, the AI should be able to recognize a diversionary attack when it comes and not overreact by moving all its forces in response.
Tactical strategies are also important, as a superior force can still lose if they do not use their forces well. Minimum, teach the AI to try to not move their units into attack range of the player at the start of a close battle, especially since counter-attacks are not in FE. Hold the faster moving units back until first contact is made if rushing in would get them torn to pieces before the heavier units can pin the enemy down. Spread out or mix in with the enemy if AoE spells are in play. Hold the line if your ranged attacks and spells are superior. Close in if they are poor. Either attack to take out enemy damage dealing capability, or attack to inflict losses (kill someone completely ASAP). Don't just attack whomever is the closest. Withdraw heavily damaged units if the battle can be won without their help to prevent unnecessary losses. A well fought battle is the icing on a well planned attack.
As for the diplomatic incentives, perhaps add temporary negative relations for capturing a city. Say, -3 for a close relation, -2 for a positive relation, -1 for a neutral, +1 for a shared enemy. And have them stack for each city. Also, additional, longer term negative relations for razing a city. They would have to wear off over time, though, or you would have everyone at war with every one fairly soon. But this would quickly turn the world against a steamroller. How about negative bonuses for being the highest on the power scale: -1 for being the highest ("Your power is worrying to us"), -2 for being 20% above the next highest ("Your power is getting out of control"), -3 for being 50% above the next highest ("You must be stopped before you destroy us all!") There would need to be positive balances, like gifting capitol or resources to produce a mollifying effect: (+3 "You have given us a great gift!")(+2 "You are very generous")(+1 "Your token is appreciated")