Relationship advice

Nicole
This is going to be really long but I just need to let out my feelings:
Okay so I've been with my boyfriend for almost five years. I did all the right things meaning being loyal, respectful, committed etc etc. sad thing is he cheated on me more than once; now yes I know what you're going to say...I should've left him. And a part of me really wishes I did back then because hen maybe my relationship wouldn't be the way it is now. He's my first real boyfriend and the only guy I've ever been with. And we have had so many great memories(minus all the bad shit) And for some reason idk why but I've been afraid to leave him. It's like idk how to. He treats me like shit and doesn't realize it yet he tells me how badly he wants to build a future with me. I'm only 20 and I know I have my whole life ahead of me but idk what it's like to be single and be with other guys. Not that I'm saying I need to be with someone because honestly at this point I just don't want to be with anyone. It's just hard because like I do love him unconditionally and care for him but he's never owned up to his actions and blames my insecurities on me. And acts like its so easy to just forget about being cheated on(might I mention he might have a baby with another girl that he cheated on me with) and yes I know I sound so stupid for staying with him...I already know. It's just everything he has done fucked me up in my head to where I can't trust, I overthink everyday and don't feel good enough especially when I've done everything I thought was right. I just don't know how to move on 😔