Don't worry!

Don't feel guilty--it's for his own good. However, I'm not a vet, but why is it necessary to feed a vet's prescription food simply to lose weight?
You can find plenty of really good brands for weight-loss OR simply feed less. Jackson is a healthy 16lbs and only eats 1/2 cup of Acana Grasslands TOTAL in a day. If your pup is trying to lose weight and is 17lbs, 1 cup a day seems a bit much. (I used to think 1 cup a day was perfect for Jackson, but it ended up being just too much). I also mix a tad of wet food.
Also, you can still 'free feed'. Just place a smaller measured amount in the bowl for him to graze on and once it's gone, it's gone.
Of course I am not a vet and don't know any more info about your pup besides that he just needs to lose weight.