Thanks for the feedback

I tell her a LOT that i'm not happy about her complaing. Her response is that all girls get fu*ked up by hormones.
You're partly right about me thinking I deserve this relationship. My thoughts are that I'm the best catch a woman can get. I suppose don't have the best lifestyle though because I work mostly nights & weekends.
Stop telling her, man. Start showing her you are unhappy. You cannot tell her you're unhappy and then continue like everything's alright. Take a stand. Show her you're unhappy. How? Go cold, stop talking to her for a couple of days. Right now, this chick probably thinks "yeah, yeah, that's right, he's unhappy, but he won't do a thing about it so I will keep up with this shajt". Trust me, this is exactly one of the things I did wrong in my relationship and it will end up in a point where you will one day get so pissed off of all of her **** and will explode in her face and then she will leave you, blaming you and telling you **** like "you're angry, we are not right for each other". Brother, take a stand, it is the only thing that could get her on her feet again and could save your relationship.