Young dogs with diarrhea and/or vomiting make me think first of gastroenteritis--eating something that didn't agree with them. Could be a foreign object like a toy, underwear, rocks or a treat or dog food that has gone "bad". Parvo virus is a possibility, but I'm assuming your dog was vaccinated as a puppy, making parvo very unlikely.
Diarrhea and vomiting both can cause dehydration, particularly in a small breed dog. I suspect that is why your dog is drinking so much. He is likely sleeping more because he doesn't feel good (and/or from the dehydration and lack of food), and not eating much because his stomach hurts.
I would take your dog to your regular vet for an exam. It is possible that his drinking isn't keeping up with the water he is losing in his stool and he may need some fluid therapy. Take in a fresh stool sample as well. Your dog may have intestinal parasites that are causing the diarrhea. Your vet may check some bloodwork to make sure the kidneys are ok, since he is drinking so much. If your dog is painful when the abdomen is palpated, your vet may want to take an x-ray, too.
If your vet thinks it is "just" gastroenteritis, then he/she will likely give the fluids, start your dog on some metronidazole (an antibiotic and anti-inflammatory that is good for diarrhea and inflammation in the GI tract), and have you feed your dog something bland, like Prescription Diet I/D, until the diarrhea clears up.