Not so much a cure as a preventative:
Before drinking, try eating a heavier meal than you normally would, with some extra fats and carbs and starches. Drink several glasses of water, take a multivitamin, and an extra B complex suppliment.
While you're drinking, drink one large glass of water for every alcoholic drink you consume to help dilute the alcohol in your system and eliminate it faster and more efficiently.
When you get home, drink two large glasses of water, take a vitamin C suppliment and two aspirin (not other pain relievers).
In the morning, drink two large glasses of water and one glass of orange juice. Eat a banana or some oatmeal with a little honey.
This method has always worked for me. I don't drink often but when I do, I never get hangovers. Just works by helping to anticipate replenishing what the body loses when drinking alcohol.