Get some exercise and try to go to bed before midnight more often. Your body's internal cycle is actually more closley linked with sunup and sundown that you would want to admit. Exercise during the daylight hours and then when you go to lie down your body will be ready for a rest. Within a week or two, this will make your sleeping more efficient, and you will wake more alert the next day.
I had trouble with lack of sleep/oversleeping for years. The best way to cure it is to just try and live more healthfully and naturally. Don't stay up until three. If its the summertime, when the sun goes down, you should be just about ready to go down, too.
If you work a physical labour job for more than a week, you will want to go down about an hour after dinner, and then you will wake up when the sun rises. I know this because when I was treeplanting, my sleep cycle was almost mechanical. You worked all day and slept all night, and then when it stopped being night, you woke up so you could work.