I have the same problem, and I'll share my experience. I adopted my boy Grigio last year from a local shelter. He was about 4 at the time, but had been picked up as a stray, so no one was sure of his background.
He was on his 'good behavior' for a while, but since the first weeks with me, he ALWAYS wakes me in the middle of the night. I posted on this board initially and got a lot of advice about playing with him before my bedtime, feeding him so he'd sleep through the night, etc., etc. Nothing worked.
I finally consulted a vet who specializes in feline behavior issues (she's specially certified), and she told me that the ONLY solution is to ignore him until he realizes that I won't get up. Tried that, but it's impossible to ignore a cat who's sitting on your head or playing with your face, as he does.
Here's the problem. I tried putting him out of the bedroom, but not confining him so that he could have the run of the house (protecting my bedroom door and frame from his scratching with plastic sheeting), but he is very, very attached and cries so piteously that I can't do that to him. I have another room where his litter box is that has a comfortable bed for him, and I could put him in there at night with some food and water, BUT because he's so attached and wants to be with me, I can't do that either.
So I'm trying to live with getting up at 3 am! Often he'll let me go back to sleep if I feed him, but just as often he wants me awake. THEN when I'm thoroughly awake and drinking my coffee, he goes into a sound sleep!
I've found that if I try to nap during the day (I'm retired and can do that), he will wake me then, too, if he's not sleeping. For some reason, he doesn't seem to like my being asleep when he's awake. It's really getting difficult.
My vet says that Grigio's own sleeping patterns are now fixed, and that seems true because when he wakes me during the night, it's almost exactly the same time.
My only other cat, a female stray who adopted me when she was just a year old, adapted her sleeping pattern to mine almost immediately and slept through the night. I get up early normally, and she was always ready to get up, but she never woke me.
This is my fault because I've let the problem become part of our routine, so it's going to be especially difficult if I have to eventually confine him to another room at night for my sanity.
By the way, when I travel (rarely), I have a sitter who lives in the house because he's so very social and needs human contact. The first time I went away for a week, he didn't disturb her at night at all. The second time I was away for just four days, by the second night, he was waking her at 5:30 am. She didn't mind too much because she goes to work and gets up about 6 anyway.
When she told me that, I wondered whether Grigio watches me sleep and wakes me at the first sign that I'm getting up. I mention this because most often when he wakes me, I have to use the bathroom--i.e., I would probably be getting up to use the bathroom at that time if he wasn't there. Perhaps, he just assumes I'm getting up, just as the sitter was probably making 'waking up' movements when it was close to her alarm time.
Sorry if this is just TMI, but I just wanted to show what a complex issue this is!