" I just don’t think it is fair she has double standards on their behaviour and she wouldn’t take it well if I said it to her, but she has no qualms about saying her opinion to me."
Oh FFS! Why should you give a flying fart if she doesn't take it well! From your OP, my suggested responses would have been ;
"her son has hit and scratched my son and she just said “well he’s more than capable of hitting him back.” "
And then you'd have screamed blue murder at my son for hitting yours. Deal with your son's behaviour, stop letting him hit and scratch.
"As a result of this my son avoids him and tends to play with her older daughter. “Your son is nowhere near as sociable with mine, he’s so bad tempered with him, all my son wants to do is play with him” . "
No, your son wants to hit and scratch. My son is perfectly sociable with other children. I'm really not sure why you think a child not wanting to play with another child who hits him makes that child 'unsociable'. You really need to get on top of this hitting, or you'll be labelling EVERY child as 'unsociable'.
"Last visit my son was very tired and clingy to me and generally grumpy and she raised her eyebrows and said “My sons NEVER like that” that’s not true, I’ve seen him act like this loads of times to the point where she’s been in tears she’s so drained, not that there’s anything wrong it’s just they are toddlers! "
The easiest one of all to deal with! 'Yeah right, all those times I've seen your son like this, they never happened.' POssibly with a rider of 'why are you so negative about my son all the time?'.
"I don’t think I can continue the friendship this way if I don’t nip this in the bud"
You are well past the bud-nipping stage. You have let her away with this for too long, which is why it is escalating - she is behaving towards you the way you allow her to. So stop allowing it. As for how to put it -I would say 'bluntly'. (See above for examples.) Stop stewing at her digs, and start responding!