agree with above
a 12 week old dog would be lucky to hold pee for 4 hrs, the idea of the crate training is that they are less likely to go in the crate especially while sleeping but unfortunately a crate can't stop the dogs anatomy.
Puppy's develop very quickly and you'll find that every month they can hold their urine longer and longer. On avg a 12 week old can hold it 2-3hrs, a 18-19 week old can hold it a good 4hrs, its definitely not easy but its not rocket science either, set the alarm, maybe you can alternate with another family member, what ever you need to do. I understand restricting water but if you put him to bed around 11pm that means you took his water away at 8pm, then he woke you up at 8:30, thats over 12 hours with out water. Maybe my math is not exactly right but you said he pees in 20minutes of drinking so how about take his water away 45minutes before he goes to bed, before you crate him bring him out to do his business, put him in his crate at 11, you can take him out at 2am like you have been, then with any luck another family member can take him out around 5am then when you wake up around 8am you can take him.
Remember the key to house training is eliminating the accidents, every accident is a set back is accomplishing your goals, plus its a psychological strain on the dog if he knows he's not suppose to go in his crate and he's doing everything he can not to go.
Best of luck