I agree more or less ...
I think that the amount of Unrest reduction per unit should be less than 5 % ... maybe 3 %.
Also I think that unrest reduction should only apply to troops that were trained in your cities (meaning that I would exclude all troops that were gathered from outside of your cities, for example wildings or mercenaries). Why? Because I think that the latter troops are rather irregular troops, which are less disciplined and, if usedfor policing duty, might cause as much unrest as they reduce (for exmaple by trying to extort money from the population or abusing their position of power in other ways)
As for population of cities meaning something:
Would definitely be nice. Another idea (that might be used with or without your ideas) would be, to see population as the cities hitpoints.
With this system a group of monsters attacking a city wouldn´t raze it immediately, as soon as you lose the battle, but instead they would inflict as much damage (in population count) as the sum of the attacking values of all (remaining) monsters in the group (or double/triple the sum).
This way large cities would be able to last several seasons till they are razed and even small cities could survive for a long time till they are razed to the ground, if the number of monsters that made it through your defenses is rather small.
Same mechanism could apply to enemy empires trying to raze your cities. So even 2 single Juggernauts would take 2-3 seasons to level your city to the ground.