For your armor balancing, this thread might have some useful info. It should explain how to make a double upgrade, which you can probably get away with at partial plate and advanced plate. With vanilla's models this probably only means losing one upgrade from militia halberds... Worth thinking about perhaps.
Also consider having your base level be 1 or 2, many systems get good results from this. 0 can appear to make units very susceptible to missile fire.
Once you've setup your armor the way you want it, I suggest you rebalance missiles to give the effect vs X type armor that you want. I'd suggest trying to try doing that using battle_config.xml rather than adjusting unit stats:
Code:
<!-- global combat balancing factors -->
<combat-balancing>
<missile-target-accuracy>
<infantry>1.0</infantry>
<cavalry>1.0</cavalry>
<elephants>1.0</elephants>
</missile-target-accuracy>
<melee-hit-rate>1.5</melee-hit-rate>
</combat-balancing>
You can do the same for melee, but I think it needs to be 1.0 or more with melee hit rate in order for the game to read it, and use it, rather than reverting to defaults. By contrast the missile accuracy controls seem to work with fractions OK.
Good luck using those settings, the alternative might turn out to be rebalancing everything else, stat by stat 
Getting the AI to produce troops with armor upgrades is probably a matter for scripting.