L.A.
You need to sit her down and tell her you will not allow her to speak down to you, EVER.
Is she paying rent? If no tell her she is actually a guest and if her attitude does not change they have 2 weeks to find a new place to live.
If she is paying rent, let her know you are about to increase the amount they are paying because putting up with her attitude is not worth the little bit she is paying. .
I would also let her know you do not appreciate the way she is speaking to her child and that he should not be the one to suffer, because SHE is so unhappy.
I also would tell her you do not approve of her having an affair and that she either needs to stop it immediately and tell her fiance or she needs to break off with her fiance. She needs to face her own consequences.
You need to ask her, exactly who does she think she is treating absolutely every person in the family so poorly..
Also ask her what is she going to do if the fiance takes the child and leaves her?
Ask her what is her child going to think of her when he gets older and realizes how his own mother behaved?
And how is she going to feel if her own sons fiance in the future.. cheats on him?
There are victims in this situation.. Her son is the one not getting the best part of her. What a terrible shame for him. He deserves so much better.