I'm afraid if someone is making you sad most of the time, then you should let them go. Having a boyfriend is meant to make you happy, You are meant to enjoy your time together, when things get you down you work through it together, and if you are sad then the other person will want to make you happy.
I know it's very very hard to let go of someone you love, but in the long run if he keeps breaking your heart, he'll wear you down until there is nothing left of you. Be assertive, do the right thing for yourself and say that's enough. Move on. Take some time alone and remember what it feels like just to be happy.
When you are ready, you will meet someone who will change your life so dramatically you will never even think about leaving him. You don't deserve to be unhappy. It'll be better for both of you.
When someone is in love, one should usually forgive, but there is a limit to the hurt that you receive. You have the right to maintain your dignity. It is better to leave the guy who is giving you heart-breaks than suffer every time. Make the beautiful life go on. We still have a lot to look forward for better life
He is useless. No, he will never, NEVER change. You don't love him; you love playing the martyr. I'd advise you to run!
Try to talk to him and let him know how you feel. If he cares about you, then he will definitely open up and respond. Well, he should care about you, because he is still with you. Take care.