I've had the exact same problem, and am still in the process of sorting it but I think I've figured it out.
The thing NOT to do is to sleep if you are tired, it will just make you more tired. Your body has become accustomed to sleeping too much and you need to discipline it.
In the middle of the summer holidays I had to get up for a week at 8am, but was still sleeping late so instead of the 10-12 hours I "needed", I was getting about 7 or 8. I was really tempted to have a nap when I came home at 5pm but for the first few days got distracted by something and was again sleeping late. Towards the end of the week I realised that I was less tired even though I was having nearly half the sleep I was used to, and decided to refuse to give in to naps during the day. This was about a month ago, and I'm now getting about 9 hours sleep average and surviving on it perfectly fine. I just said to myself that I don't care if I sleep late, I have to get up between 9-10am, even if for no reason. And it doesn't matter how tired I am during the day, and how desparate I am to sleep at 8pm, I can't sleep. It's taken a month or so to get to this stage and I feel much more refreshed during the day than when I was sleeping more.
It's just about conditioning your body and mind to survive on a certain number of hours. It's hard but be harsh with yourself and make yourself busy so you forget about sleep. Another key thing is routine. A regular waking up time helps to consolidate your biological alarm clock, which will mean your sleep cycle adjusts to the number of hours you sleep and so when it is time to wake up you are in a light state of sleep and will hear alarm clocks etc. Quite often I wake up 2 minutes before my alarm is due to ring.
After reading the above post, I should add that I started taking Vitamin B a month ago, so that has probably helped, as has iron tablets.