Sounds like he had a respiratory infection. Not uncommon, and with the meds he should be fine. You did the right thing by taking him to the vet.
His age could be accurate, even at a low weight. Some people feed just enough to keep them going, while others will feed appropriately. Also, snakes are like people in the sense that they all grow at different rates. You can't really accurately determine age by weight. The only real way to know for sure is by talking to the breeder.
I would continue the medication as directed by the vet, and offer him a meal every 4 or 5 days until he eats again. Once he starts eating again, I'd offer a meal every 5 or 6 days until he's up to maybe 300g or so, then you could probably cut back to every 6 or 7 days.
Best of luck. He's a pretty boy.