I have an idea but it might seem like something a bit much to do. Have you approached her and asked her why she feels the need to be unpleasant? Perhaps she is unaware you feel like you do. Or perhaps she is suffering from some pain herself and just doesn't realize she is taking it out on others.