I think it would make spell resistance much more useful if instead of only affecting non-damage spells, it would partial protection from damage spells. Maybe for each point of magic resistance, you get 1% reduction in the damage from damage spells, and damage suffered by a unit by a certain type of damage is
Full damage x (1 - Damage Type Resistance %) x (1 - Magic Resistance %), rounded down. If a unit is 50% resistant to fire and has a 20% magic resistance, then damage done to that unit by a fire damage spell of 50 would be:
50 x 0.5 x 0.8 = 20
If another unit had the same magic resistance but no fire resistance, damage from the spell would be:
50 x 1 x 0.8 = 40
If the unit had the same magic resistance but double damage from fire (resistance would be -100%) damage from the spell would be:
50 x [1-(-1)] x 0.8 = 50 x 2 x 0.8 = 80
To distinguish armies from champions, they could have traits that increase their magic resistance percentage, or provide resistance to certain types of damage, and furthermore, certain traits could be restricted to certain races or have other requirements. You could have a % weakness (not just 100%) to a certain damage type too, that would reduce the cost of a unit (maybe by a percentage). I don't think complete immunity to any damage type would be a good idea for any selectable trait for a unit though. For both armies and champions, Intelligence would increase spell resistance by a balanced amount/percentage and champions could increase their magic resistance or damage type resistance with items (should be rare) or they could increase their magic resistance by increasing their intelligence. This would also mean that mages would have more magic resistance. Intelligence would no longer increase XP gain. Intelligence would also be used for how much mana a champion/sov could use per season. It should be enough to cast a few decent spells, but not so much that you can wipe out three or five groups of big armies in one season.
For spells that don't have a damage component, magic resistance would stay as a percentage chance of avoiding the effect altogether, modified by spell mastery. I don't think spell mastery should affect damage spells.