If I understand correctly, and in legal matters that is a leap of faith...........but he was fined for wearing a non compliant PFD? He was not fined for not complying by having "legal" PFDs onboard, but rather the fact he wore a non compliant one? Had he not been wearing the torn one it sounds like he would not have rec'd a ticket.
I don't know the legislation but am guessing that carrying "legal" ones is one thing but actually wearing a non compliant one must be an offence? If it is not an offence to wear/carry non compliant ones so long as a "legal" one is aboard, he broke no laws.
It is easy to say......but he should fight it. But its not my time and expense to do so, so it's easy to say that. Better judgement on behalf of the officer would have saved everyone a lot of misery here.