Your boy needs to be seen ASAP! He may have eate a toxin, been injured or have damaged his liver by not eating.
Although overweight can cause diabetes and other health problems, it is very dangerous for a cat to suddenly lose weight. That is because a cats liver becomes accustomed to a certain caloric intake. If that amount is cut (for any reason) the liver will think it is starving and grab protein and fat from the cats muscles and organs. This can cause liver and organ failure, muscle wasting and lead to a weakening of the immunity and a disorder called Hepatic lipidosis:
Essentially what happens is the body goes into a state of starvation, and a signal is sent out that the body must mobilize the fat stores to provide energy. Unfortunately, there doesn't seem to be a signal about how much fat to mobilize and fat cats have a lot... so it all gets sent to the liver to be converted from fat into glucose. And the liver gets overwhelmed and shuts down. This leads to nausea and vomiting, which means the cat won't eat, and the body tries to mobilize more fat. The cycle continues and the liver gets into more trouble.
If he wont eat, and your cat is not diabetic begin by giving him two droppers (cc size) of unflavored pedialyte every ten minutes for an hour. Next water down(plain water) canned cat food or baby food chicken or turkey with no onion or garlic and give only one dropper every ten minutes for another hour. Wait two hours and repeat both. When he feels hydrated he will lick up the gruel on his own.
Give him droppers of unflavored pedialyte a few times a day to make sure he stays hydrated.
If he throws it up have him seen immedately.
Please let me know how he is doing. I will always be here for you.
I hope he feels better very soon.
Sincerest best wishes,