I had kinda same issue as you where i would sleep for 12 hours and couldn't wake up. I fixed it by doing this:
Right now I use 2 alarms, 1 is a regular clock which is loud as fuck and the other one is my phone.
With my phone i downloaded some app that plays my music and when i press snooze it will play the alarm again in 5 minutes. There is also an option that you have to solve some math issues every time you want to snooze it, or when you want to dismiss it.
The alarm clock i set about 30 minutes after the alarm on my phone. And i put the alarm clock somewhere far away from the bed, e.g. on the top shelf of my desk so that i HAVE to get out of bed to stop it.