Advice, but don’t be mean :-(

I’m not even sure how to start this tbh. ITS A LOT, but I’m in trouble and idk what to do. I’m in a relationship and we’ve been together for about 3 1/2 years. Everything started out great, but when he moved in with my family (he didn’t have a good home life) after we’d been dating about a year he started acting different. It started with him getting mad when I took my (guy) friend to college. We’d been in the same group of friends since middle school and he only lived 15 mins from me and it was otw so I didn’t see an issue, but he did so I had to stop taking him in the middle of the semester. I felt awful, but my friend said he understood. Then shortly after that he went thru my phone (I never cared and still don’t bc I don’t have anything to hide and I’ll stand by what I said) and saw I was venting about him to the same friend group and it was mostly guys, but they all had gf’s that were in the gc also! So then I had to leave that chat and basically stopped being all their friend. Then about a year after that he starts drama with my only girlfriend left (while I was on a cruise so I had no idea this happened until I got back) and she stopped being my friend bc my bf kept making her bf think she was cheating on him. Like wtf, I don’t even know how that happened, but I was hurt because she wouldn’t even answer me once I got back to land! So I think I still hold all of this against him a little because I am so fucking lonely. I tell him all the time that I feel so unloved and alone. He tells me I’m ungrateful when I say that because he says she showers me with love. And if it takes him being with me 24/7 to feel loved then he said I need to leave and find a rich man who never works. That totally missed the point of me trying to tell him I wish he was more affectionate or actually out some effort into mending our relationship.. Since covid he’s skipped out on 1 bday, 1 valentines, 2 anniversaries and Christmas was so last minute I could’ve bet he almost forget about me then too. I say he could’ve gotten me flowers or at least made a post or SOMETHING you know.. I just want to feel appreciated for everything I do for him.. I cook, clean, help pay bills, take care of all our pets, and work my own full time job. He does pay majority of the bills, but it’s because he makes more so I take on the smaller bills and grooves and whatever else we need, but still he could do the dishes or trash or laundry once in a while.. :-( I’ve always struggled with depression, but this past year has been really rough for me. He snaps at me for every little thing and is constantly belittling me. When I try to say something back he gets mad and starts yelling mean things. I tell him he shouldn’t call me a bitch or cunt or anything nasty like that, but it goes in one ear and out the other. Lately things have been more tense because I saw on his phone a females name that I didn’t recognize, so I just asked him who that was and he starts saying that it’s the receptionist from work and she thinks it’s okay to snap him and blow him up on his phone and snap all the time. I didn’t think twice about her texting him for work, but now I know she’s snapping him also and it just makes me feel sick because he is at work from 7am until 7-10pm every day. He does HVAC, so I know some jobs take days or they load him up with calls since he’s one of the best leads his company has. But he works these loooong ass hours all the time and I can’t help but to think is he really spending the whole time at work? Or is he with her? Because he told me when she first got hired that she only took the job bc she knew he worked there and she had a crush on him in school… I’ve asked him earlier in our relationship if he’d be okay to get Life360 or just share his location with me and he says no because “he doesn’t want people to know where he is at.” I’m just already so sad all the time and I feel like this new info is really crushing me and idk why because i know we should break up and the two new friends I have now say we should just break up also.. I love him so much and I know that’s me in denial and I know I should leave him, but it’s just so hard. We live together in our own home now and have 5 pets, so I know that is what partially keeps me here, but other than that it’s like half of my heart physically won’t let me leave him. Just the thought tears me up. I wants us to grow together and be better, but when I try to communicate and tell him what’s bothering me or how he could help me feel better he just brushes it off or says we’ll take later and we never do or he tells me I’m too sensitive or he’s even suggested a few times I’m autistic… Now I know that’s not a bad thing at all, but when that’s being yelled at in my face and I’m sobbing and I’ve never had something like that said to me.. I’m definitely taking it as a bad thing. He just makes me feel like shit about everything I do and say and even wear. I shouldn’t feel this way and I KNOW that but I don’t feel this way all the time. We have so many great moments together and even throughout the day we’ll talk a little and be happy then he’ll get home and we’ll be okay for a few. Then out of nowhere I’ll just do or say something wrong and he snaps and next thing I know I’m bawling and he’s storming off saying mean things. I don’t know what to do, but I’m so tired of being sad and feeling neglected and rejected. :-(