We have all been in the same place at one point. It's extremely frustrating to work so hard for a relationship to work and get nothing but hurt in return. Especially when the person that you worked so hard for is everything that you ever wanted. Whether he wasn't ready for a commitment, put another girl ahead of you or just didn't know what he wanted, there's a good chance that he will see you doing well and trying to move on without him and try to come back into your life for a second chance (or a third chance, or a fourth chance). While I'm a firm believer in things coming back if they are really meant to be in your life, I have to say that giving him more than a few chances is just going to end up hurting you more.
He hurt you. He walked all over your heart and left you with nothing but questions and regrets. If this is his fourth or fifth time coming back around, let him miss you. Don't put your mind in a bad place and mess up everything you have worked so hard for. The guy who is going to treat you correctly forever is out there waiting. Don't waste time on a jerk who likes to play with you, no matter how much you like him. Deep down, he probably does truthfully care about you, but he also most likely doesn't view your feelings as important because if you continue to go back to him, he will think that you don't care about yourself either. Show him you have some self esteem, stop looking so desperate. Live your life as a free woman and let him make it up to you. If he's a good guy deep down who's just made a few too many mistakes and is worthy of your time and love, he will try to make things right until you tell him to stop.
There is nothing worse than a broken heart over someone you really and truly cared about and wanted. Stop letting yourself get to that point. Take some time for yourself and maybe even go out with someone new for a change. This guy may not make your heart race or give you goosebumps, but try to get your mind off of the jerk who treats you poorly. Show him that you can go out with others and not think about him, even if he's on your mind all the time, he doesn't need to know that. Let him chase you for a change, show him how it feels to be the one wishing for the other.
You are strong, you are beautiful. If he does not realize your worth, do not go back. Do not go back to the lonely late nights, worried about who he's talking to and what he's doing. Do not go back to putting him above anyone else in your life when you know for sure that he would not do the same for you. It's okay to be single, as long as you are healthy and happy. If he drives you to a dark place, cut him out.
Once he realizes what he has lost again, the cycle will repeat. You'll get a call or text from him in the middle of the night and your heart will race, just as it used to do before things went wrong. Back when you thought he was the guy for you and before he had a chance to prove otherwise. But you'll remember, eventually, that he's not good enough for you. You may not be strong enough to let him go completely just yet, and that's understandable, but please do not just let him back in without an actual attempt to fix things. One day, you'll finally have moved on, and that day will be here before you know it. Put your happiness and mental health above everything, and don't let him destroy it. We all know that if he gets the chance again, he will.