Long post, be warned. Not actually all that upset, by the way! Genuinely just asking for advice if anyone has the energy to dredge through it.
So, I'm 19, almost 20, a year and a half on T, and have been out for our whole friendship but not the whole time he's known me? we met when we were 11 but only became good friends at around 14, which is also when I socially transitioned (and when he came out as gay through my counsel, though he was already out to me). He's genuinely a really sweet guy at heart, and I know he supports me and trans people in general, but he's also painfully autistic (me too) and has a bad case of single kitten syndrome to boot.
He also seems to have exclusively learned his sense of humour from Frankie Boyle, Jimmy Carr and his 30-something year old straight metalhead brother. He's like if Alan Carr had the personality of Eric Cartman but with flaws only Sigmund Freud could address.
Here's the meat of the issue. He calls me by my name, uses my pronouns, and I know he does so in earnest, but he also makes a lot of off-colour jokes that are "starting to" irritate me, and he makes them because he knows it irks me - like a brother would, more than anything. For example, he calls me and my best friend "lesbians" (she actually is a lesbian, I'm gay) and says we're "mincing" (whatever that means) whenever we're talking in his presence or we get cuddly at his house. Not excluding him, he's just quiet and not touchy, though we are both getting a little exasperated by him at this point.
He also makes "jokes" about my deadname (a nickname of my birth name and the name everyone knew me by was Millie, which is relevant and I don't really mind sharing). He says "I'm calling Millie" randomly, in reference to the old meme of Millie Bobby Brown running gays down with her car, but I really think he just says that to have plausible deniability, like, "I'm not touching you!" I think he also said something like "I'm going to say it one day at a really random moment". Like, he'll say my deadname at some point down the line for shock factor. Which is what his humour consists of, including slurs.
He once introduced us to a coworker as "(d slur) and (t slur)", and he pre-planned it. He told us he was going to do it, and I jokingly complained, but thinking about it now, he literally works in the nightclub she and I always go to, and I was already at least 6 months on T at that point, so that was, like, really shitty. I didn't and don't pass, but I'd rather not be outed via slur to a bewildered and uncomfortably laughing stranger. It also doesn't give me faith that he hasn't told everyone who's met me or asked about me my deadname or that I'm trans.
The thing is, as offensive as he thinks it's funny to be, he genuinely in his bones doesn't mean any sort of actual harm by it, though it sounds difficult to believe. Despite that, it does sort of sting - not in a deep betrayal way, it's just sort of like if you have an insecurity that someone keeps niggling at jokingly, or a bruise someone keeps poking. Like, come on, man...
But, all this to say, what do I... do? Because I genuinely really love him like an annoying little brother who happens to be 9 months older than me. I've seen him through hard times and helped him accept himself, we're kind of his only real friends (and them me), but it puts me off making the effort to see him IRL one-on-one that he's always just kind of mean to me, and I think it's because I've allowed the behaviour so long. I don't want to argue with him and have him get defensive, but I want to communicate that even if I'm laughing I'm actually uncomfortable and don't like the way he talks about me.
Sorry, long post, but I'd love some advice from someone more socially capable.