The best way to deal with relationship issues is to always sit down and examine the pros and cons of staying or not staying in the relationship. Then, whatever decision you make will be based on the positives outweighing the negatives. It is always better to communicate directly about each issue and see if there are ways to better the relationship. As someone suggested earlier, taking a break from each other may give you a clear head to think about your future without much attachment.
As for me, making a decision in these kinds of matters are not for debate. If I'm not treated with respect, dignity and the person makes me feel bad every time I'm around them, then I will end it right there. Life is too short to waste it like that. The more you stay with this kind of relationship, the more you lose the opportunity to meet great people that you want to be around more often.