"My husband tends to hide or goes off to do something else leaving me to look after her."
Two problems here -
- He's putting his problems onto your shoulders, which as well as being shit for you is doing him no favours either. He's running away, which is a maladaptive coping strategy that is a problem in itself.
- She's there every weekend, his buggering off is interfering with his relationship with his sons. And what is it teaching them, to fuck off and leave their future wives to deal with all the shit?
So- no, no, no, he stops hiding/fucking off and deals with his damned mother! He stops putting his burden onto your shoulders and he models acceptable husband/father-behaviour to his two sons. No ifs, no buts, he steps up and behaves like a bloody adult!
"I really don't want to have a confrontation with her because I think it will cause upset and I honestly don't think she knows any different or maybe she doesn't realise how she's coming across (plus I'm also petrified of her)."
Stop thinking of it as confrontation, start thinking about modelling good behaviour for your sons. How would you feel if they started talking to you the way she does? Because she too is modelling behaviour and they will be absorbing it.
Stop accepting her put-down so demurely. Respond. Make a joke of it if you want ('Just can't resist having a go at me, can you Ethel? Well everyone has to have a hobby, I suppose?' then wander off leaving her to it) or just the straightforward 'You know, the way you talk to me is very hurtful, and I want it to stop'. The only thing you have to do is not let her behaviour pass unremarked.
Now, the first couple of times you do this, there will be pushback. She might get huffy, pretend she's offended, sulk, shout - whatever. It is important that you stand your ground. Do not withdraw your remark. I'm guessing whatever she goes with, a response of 'Well now you know what it feels like' won't be far off the mark.
So, I've mentioned two things you have to do.
- Your husband doesn't get to fuck off.
- You don't let her barbs pass unremarked.
There's a third thing that is also needed. She doesn't come EVERY weekend. No siree, that stops now. You are entitled to have your boys to your two selves, and that's not happening if she's there. So cut it back. Every other week at most. Discuss with your husband how you're going to do this. I personally would do it together, present a united front ('ganging up', in her eyes) and as a done deal. 'We have discussed this and decided ...'. However, your husband might be inclined to run away, so do it alone if you must. BUT DO IT SOON. And get your family life back.