IIRC he did cheat on her once. I clearly recall Haykeye trying to talk B.J. out of writing his wife and telling her about it.
Personally, I liked his character for the most part. Too bad he's such a dolt in real life.
I must have missed that one. Ah, well, when a show runs twelve years you have to contrive some plotlines here and there. At least they didn't bring in a baby to liven up the mix. Or Ted McGinley. (See http://www.jumptheshark.com -- allows people to talk about when their favorite shows started going downhill).