This sounds very similar to the way I have felt in the past and, if you’re fairly certain you don’t have some other sleeping disorder like sleep apnea, I think it’s mostly a sleeping habit thing. For me, I had almost identical symptoms for years, and changing my habits was difficult, but it made a significant difference.
For falling asleep, a big thing was trying to be more consistent about when I go to sleep. If it’s all over the place, then I’ll have a harder time falling asleep on some of the earlier nights. More importantly, having some kind of pre-bed ritual to winddown helps. That means, not being on the compute rand immediately jumping in bed, but trying to avoid that sort of stuff.
The biggest helping factor, for me personally, was meditation, which helped me learn to calm my racing mind, which otherwise can easily keep me up. If you’re not into that, or have difficulty with it, anything you can do that will help with that will make a difference. That could mean some light reading or soft music, or other relaxation techniques like focusing on your breath or whatever.
For waking up, it’s probably a bit more difficult because it requires some presence of mind, but the most effective thing is just to get the hell out of bed. In the OP, you say you plop back into bed promising yourself 5 more minutes. Don’t do that. If you have to, put your alarm across the room, and once you get out of bed, no matter how much you want to lay back down, don’t. Each time you lay back down, you basically reset your wake-up, but it’s not like that extra 5, 10, 20 minutes is meaningful restful sleep. And it also helps to do something to reinforce waking up, like when you get out of bed, jump in the shower as quickly as possible. Not only will it help you wake up, but it makes it more or less impossible to just shower and lay back down.
Another thing, try to wake up at the same time every day, even on days off, as much as possible. Getting your body into that routine will help with the chemical side. When I had issues waking up, I was waking up at different times throughout the week. Waking up at more consistent times, even on weekends, not only would I start to wake up naturally about the time my alarm would go off, but even when I wasn’t, I was in the natural process of it, so it was easier.
And some more general things, if you’re not getting regular exercise, do it. I have an intense and consistent regimen, and I can even feel a difference in how quickly I fall alseep and the quality of sleep I get on days I work out and days I take off. When I take a longer break, like on a vacation, I can definitely feel that quality drop a lot. Personally, I also found that caffeine, while it might help you wake up, ultimately made it more difficult for me, and I mostly eliminated it. If you are going to drink it, make sure you avoid it for several hours before bed. For that matter, diet can make a noticable difference. Besides just eating better in general, I find avoiding heavy meals late, but usually eating something light and with some decent protein not too long before bed helps give me that energy in the morning I wouldn’t otherwise have until at least sometime after eating breakfast.