I used to be like that. It is possible to make changes in your life. You've made the first step by recognizing that it is a problem. It took me years to figure that out. My husband has been my rock and driving force of support. My husband is also the total opposite of me and everyday I thank my lucky stars.
I think that my "eye opening" moment was when I took a hard look at my mom and sister and realized that I do not want to be anything like them. I did not want to be angry or negative all the time because lets face it, . . feeling that way is draining and exhausting, . . like a cancer. They are both very hateful, jealous, overweight, and find joy in putting others down to make them feel better about themselves. I have 2 children to think of and an example to set. I think that a lot of us "type A" people tend to have a need for control and a poor image of ourselves. I figured out that I needed to worry about making myself happy. I saw my Dr. went on Prozac, started exercising more and took time for me.
My husband taught me something that I will always remember that most of the time when you talk to someone and you think that they are mean, . . or rude, . . that 99% of the time it is not about you and that the person is probably having a bad day or has something else on their mind. When it is about you and that person is being a snot rag let it go, . . . trust me that person sleeps just fine at night not worrying about you. This really made sense to me when one day we were driving and someone cut my husband off on the road. I was upset and he said, . . no big deal we all make mistakes. I couldn't believe that he could brush it off so easy. Then I realized that wow when you let things go you can go on with other things in the day that mean more to you, . . .like laughing with my kids.
Sorry I don't have any books to reccomend but sounds like you have a great husband and support system. Exercise has helped me tremendously because when I feel fit I feel confident. The Prozac helps me to just not sweat the small stuff. I'm thinking of you and sending you (((hugs))).