Grant Booth answered this in a previous thread:
"This is actually built in to Marketo, as Jenn described.
Think of the behavior as part of Marketo's durable unsubscribe. In each Marketo instance, whether or not an email address is unsubscribed is recorded separately from individual leads, and actually saved on the back-end. For example, if you delete a lead with an email address which is unsubscribed, and then create a new lead with the same email address, it will be automatically unsubscribed:
If you look at the lead's activity log and double-click the change data value activity for Unsubscribed, it gives this as a reason: "System flow action sysActionChangeDataValue resetLeadEmailStatus": the same reason it gives when someone is set to true by the durable unsubscribe I described above.
While I can't speak to the legal side of this, as I'm not an attorney, my understanding is that when someone opts out of receiving emails, they are opting out of receiving emails at a particular email address, not out of receiving emails from you in general. Since this is an "opt out" field, not an "opt in" field, there's no reason to keep the lead unsubscribed when their email address changes. If you're using the Unsubscribed field as an opt-in field (setting everyone to true and then setting the field to false if someone opts in), I recommend using a custom field instead." Grant Booth