I think shields currently offer goid protection vs missilee BUT are overcosted and too situational. My suggestion is aimed at making them more useful against wider range of armies while still remaining the best pick vs heavy missile armies.
Suggestion: reduce MD provides by shields, reduce cost of taking shields, add armour for taking a shields.
Shields cost 50 to equip for infantry 75 for cav
Bronze = +3MD inf/+2MD cav, 35% missile block from front, +5 armour
Silver = +3MD inf/+2MD cav, 55% missile block from front, +10 armour
This way shields would provide little extra protection vs ranged fire due to armour from all sides while still having an impact if the opponent did not bring missiles.
Units that have shields as defoult might deserve -25g cost down but this should be on case by case basis.