I mean, we've already had this conversation, right?
(1) First, yes: the player chose the druid character knowing about metal restrictions. And if your table has some mechanism to completely avoid all situations where a PC might rationally be expected to confront that choice. Just avoid the situation, avoid the rule, avoid the one single place in the game where RAW yoinks agency from the player so it never comes up. That can be done, as someone said, by GM fiat ("poof, the shield is now wooden!"); or, as you yourself said, by defining a red line that shall not be crossed. Cool! A little unsatisfying, in my opinion, but those do work.
(2) Second, no, your "no evil" policy does NOT violate player agency, because you DO allow the player to make the choice based on the threat of consequences. Repeat: your table rule has consequences. CONSEQUENCES. See, it's all good, because your player retains agency over the character, and you've defined CONSEQUNCES. The druid armor dumbassery (as specifically worded in the book with the word "will not") doesn't allow the player to choose that course of action for their character, nor does it offer any in-game consequences of such an action or rationales to prevent the action. So the ONLY way to deal with it as perfect, unsullied RAW is to either (a) avoid such situations entirely (as in 1 above) or else (b) rob the player of their agency in that one tiny little situation in the whole game and say "Nope, you won't do that."
Alternatively, of course, one could go ever so slightly outside RAW, and just do what any normal GM would do anyway, which is: a quick talk with the player to get on the same page, make a ruling for and in-game consequence and/or preventative measure, and then keep on playing!