Couple of other things to consider...
Could you be sleeping on a slope with your head at the bottom - e.g. with no pillows? I did that once by accident in a tent and woke up with headaches, not fun.
Secondly, do you know if you snore at all? Obstructive sleep apnoea, although often associated with overweight older men can affect anyone. Basically you can't breathe during the night due to blocked airways so keep having mini-awakenings (that you don't realise you're having) due to lack of oxygen. Due to this oxygen starvation you can also wake up with a headache. If you feel tired and unrested after waking up in the mornings this might be something to consider.
I would definitely speak to your GP about your symptoms if drinking more before bed, cutting down on any caffeine products etc. isn't helping.