Let me tell you something. Don't walk. Run. He will never change and if he does, it won't be for you. It will be for someone he will actually call his girlfriend. It will be for someone he can let meet his mother and his friends. She will not be his secret like you are. And that is what you need as well, someone who puts you first, who is proud to call you theirs. Find someone who thinks you are special. Your not gonna do that while chasing after someone who does not really want to be with you.
I know when you met him you fell hard. You thought he was going to be the one but let me tell you, he's not. He is not the one for you. Anyone who makes you sad or makes you feel unwanted is not the one for you. Just leave. Do something but, don't stay.
He has done you wrong, multiple times. You know it hurts and still every time you come back. You want him to want you back, to love you back. He won't. And when he does love it won't be you because if it was you, you would know. You wouldn't feel sad. You wouldn't feel unwanted. You would be happy. You would feel secure.
He is not a good guy. He is the guy your parents don't approve of and you friends can't stand. He doesn't appreciate the things you do. He doesn't want what you want right now and that's okay. You will find someone who does. Someone who wants and is everything you need. You will be sad at first but you will move on. You won't lose yourself just because you lost him. And let me tell you love comes and goes and you will find it again. You will be okay.
So let me tell you this. I promise he will regret it one day. He will look back and wish he could have done it all different. And you will be fine. You will be better off without him and you will realize that... one day. You will look back and you will say; wow why did I love him? He is the one you can't walk away from but he IS the one you should walk away from.
So, walk, run, do something but do it moving the opposite direction of him because right now he is bringing you down, he is keeping you away from the right one.
Do yourself a favor and walk away.