I don’t have an exact answer for you, but over time I have found that different jersey fabrics have upset my Garmin in a similar way to you describe. Are you using different tops whilst on Zwift? Could it be static?
I have also recently had a problem with Garmin HRM strap that looked perfect, but was obviously faulty. Had to change that.
Lastly recently my Garmin was reading 240! When I took it apart I found that one of the rear screws was not gripping and it appeared that moisture may have been entering. Time to change the unit for me as the battery seemed good, but only because I had a spare. I like to fix things rather than experience the cost of replacement.
I try to keep my cycling as cheap as possible.
Hope you can find your solution. “Ride On”