CBT (cognitive behavioral therapy)
Basically you confront your rationalizations for why you're acting or thinking as you are which you don't like. Then considering why you were rationalizing it in the first place.
For example, I used to think my sleep schedule was set by my poor attention to time management and lack of interest in being awake during the day. I tried (while I wouldn't recommend it) sleeping pills to force the behavior change. I discovered that the real reason was not my rationalizations that I had come up with. When I slept at night I would need to have access to the common areas of my house at the same time as my co-habitants and that would cause conflicts that changing sleeping times avoided and actually was facilitating a less disharmonious relations: if I ate when people were settling into bed, showered when people were asleep and woke up when everyone else was at work.
Steps
1. Try to write down why you think you do the things you don't like. It doesn't have to elaborate just enough that it helps you become conscious of what you think might be causing the behaviors or thoughts.
2. Now that you think you know why you're doing what you don't like, consciously try anything different. It doesn't have to work. Basically you are testing weather you rationalization is correct.
3. If you were right about the rationalization, then great your done. Else, return to step 1 and repeat the process adding what you learned form the last time you did step 2.
Some times this can be done by talking to a professional, but writing it down can work just as well. If you have gnu emcas you can use the doctor program; it's the same idea.
At least for me writing stuff down, even if I never look at it again, gets it out of my head. It's like a reverb on a wire travailing around and around in my head. I'll stop my self suddenly and be right back were I was when upset or having a confrontation and it was all real again. It just keeps travailing around and around. Writing down seems to release it. The added bonus is that if I even want to infect my self again, I know here to find whPost too long. Click here to view the full text.