How to get my boyfriend to show me affection

My boyfriend doesn't show me any type of affection. He's the type of person that just has never really been affectionate, but after five years of dating and living together, I don't even feel like he's my boyfriend. I just feel like he's someone I'm living my life with. Yeah call me beautiful here and there, but our sex life is so boring I can literally predict everything that's going to happen. he doesn't call me beautiful or sexy or say that he likes my body, and I've been struggling with self-esteem issues and it's like he doesn't even care that I'm feeling less about myself. I thought that since he knew I was feeling down about myself, he would maybe take an extra step to call me pretty here there tell me that he loves me the way I am. But he doesn't. And like I said I don't think he's doing it on purpose, it's just his type of personality. I've talked to him so many times about feeling unwanted and not feeling any affection. he always says he's sorry and that he does love me and he does want me, he just doesn't show it. I'm craving that honeymoon phase of a relationship, and I honestly just want attention at this point. I would never ever ever cheat, I'm just explaining my feelings, I want affection I want a guy to talk to me and make me feel good about myself, I want to feel like someone is interested in me. how do I fix this. I've been talking to him about this for easily two years and he's never changed his behavior. I can't imagine spending the rest of my life feeling unwanted and feeling no affection in my relationship.

and it sucks because besides that one aspect, everything is so amazing. we work so well together and we live so well together. It's just when it comes down to affection and sex, nothing's there.