Start stacking your own spies in the city and you should be able to get the Milanese spy killed/kicked out of town. I believe having an assassin in town will also make it harder for their spies to infiltrate.
As for the passive AI, yep it's very annoying but we'll just have to wait and hope a fix comes out soon. In the meantime though, I use the tedious trick of sending out some cavalry to lure enemy units to break away and pursue. I then led them back to the walls where my archers/towers can kill them. Do this enough times and you can weaken the AI to the point you can easily sally forth and crush them outside the gates.
Bookmarks