I can understand why all these conflicting emotions are confusing. But you know what? I think you need to be single for awhile. You’ve been with your guy since you were only 16. You’ve both changed a lot during the past 3 years. That’s probably why you two are fighting all the time and driving each other crazy. The other guy gave you herpes and disrespects your relationship. Neither one sounds like a good bet to me.
I worry that you are so convinced that you need somebody that you think you can’t be solo for awhile. But frankly, your problem isn’t which of these guys to choose. Your problem is that you aren’t ready to be in a committed relationship. You haven’t figured yourself out yet, much less what you want from a relationship. My advice is that you hang out with friends, both male and female, and avoid rushing into being a couple with someone. Take the time to know yourself better, to become more secure and mature, and to figure out what you are looking for in a life partner. You – and the guys you meet – deserve that.
I wish you well.