Poor little guy - he sounds pretty sick ....
I hope it's just an upset tummy - but I'm in agreement with the reply's here - I would at least CALL the vet for starters -
He's a year old so I would hope it's not parasites or anything - Many people feed sick yorkies boiled Chicken and some rice and Pedialite for drinking - if he won't drink on his own - a Syringe with water will do the trick.
If it were me - I would try that first - then see how he looks and if he's still really feeling bad .........I agree that you may need to talk to your vet and/or bring him in - If you see any shaking or signs of any severe symptoms I would call your vet asap though...it's better to be on the safe side.