Everyone and their mother has some kind of "hangover cure", but this is the only thing I know that actually has a scientific reason for working. Metadoxine is literally used to treat alcohol poisoning. It increases the activity of acetaldehyde dehydrogenase which helps break down acetaldehyde, the metabolite of alcohol that causes many of its unpleasant and harmful effects. Metadoxine has very few side effects and is dirt cheap. You can get a prescription from your doctor or just buy it from an online source like AllDayChemist.
Just take it before you go to bed after a night of drinking and it will help prevent a hangover the next day, or take it when you wake up with a hangover and it will make the hangover go away faster.
Edit: grammar
Edit 2: I did more research and it appears that metadoxine is not available in the US. Just order it online.