quick post:
you do sound as though you are having a rough time of it. A lot of this is just what many 2 yo boys DO, and it is tiring and wearing and you just have to stick to your guns and keep treating them with as much respect as you can muster.
Saying "mummy only likes nice good boys is not respectful, imo, it is making your approval/love conditional. Would be better to say something honest like, "OW! That HURT!" (not in a scary way, but if he has hurt you-let him know! And if you feel you need to move away because you are afraid he will hurt you again then say so, but don't make him feel like a bad person.
I feel it is ok to take practical action to defend yourself, but be honest about what you are doing and why. His feelings are legitimate, but more than that, you cannot erradicate his feelings using any sort of behaviour modification. You can gradually change how he expresses those feelings-and imo the absolute best way to do that (especially for a boy) is to show him that his feelings are legitimate and will be listened to (though some expressions of behaviour aren't). It is exceptionally tricky to do this with a 2 yo though, I think its really about acknowleging and asking him to change the behaviour, not the feelings.
Do you have "How to talk?" btw? Can't remember. It is great, I think it is practical UP. Though some people (the UP hardcore ) don't like it. I think it WORKS-it keeps the lines of communication open and makes kids feel generally respected.
I also think as a rule if a child is displaying behaviour that they know is wrong, this is very often a self esteem issue and one easy way to improve the behaviour a lot is to put them in situations that boost the self esteem and take them out of situations where they are repeatedly failing. And especially situations where they have a bad reputation. In your son's case-do you need to go to that toddler group? Could you take a break? (I do understand that YOU might need somewhere to let off steam for a bit, I think that is also very important)
. But could you take a few weeks out and put him a lot more into situations that you expect him to behave well in, and then go back to toddlers? Analagous to going into a starvation zone-feed them up first!