It's good that you want to be a better boyfriend, and you're not completely ignoring your girlfriend's unhappiness.
Like they say, it's harder to be caught up in yourself when you're busy doing something nice for someone else. I think that changing is easier than you think and doesn't have to cost a lot. (That is, you don't necessarily need therapy.)
You can give to others in so many ways. Try writing a list.
Examples:
-When you are downtown and come across someone playing music for spare change, take a moment to stop and listen, tell them you enjoyed their music, and give them some money.
-Hold open doors for people and smile at them and say hello.
-Ask your family/friends/coworkers about their day but really LISTEN and truly care what they have to say. The gift you are giving them is your time and caring.
-Be kind to an animal (such as taking a dog for a long walk and giving him praise and treats.)
-Do something nice for your girlfriend, like giving her a massage, without wanting anything in return.
I could go on, but I think you get the point.
Doing nice things for others, not because you want to get something from them but simply because you want to be nice, is one way to change.
If you continue to have strife with your girlfriend and are having trouble changing, then therapy might help. Your health insurance might offer a few free sessions. Be sure to ask the therapist for homework. We all learn by pondering and doing. No one is perfect, and it does take work and time to think about how our words and actions might be affecting others.