My first thought was that this is no big deal, kids grow into their weight in cycles. After reading the responses, I did a little research and found an Ideal Body Weight calculator on About.com (link at bottom)
I think it's really about choices. You don't want your boy to be the "fat kid" because of all the teasing and ridicule that go along with it. He's in the 95% for his age/weight.
Basically, I think you need to set a different standard for how he eats. He can have as much of the good foods as he wants and then set a limit on the sweets/snack foods that we love, but aren't really good for us.
The idea of having him help shop and cook with you is great! You need to change his palate so that he learns to love the other foods in life. There are loads of websites out there with tricks for feeding picky eaters. You just have to set the bar and not waver. It WILL be hard at first, but be loving. Come up with different ways to have treats.
Weight Watchers and vegetarian websites often have great treat ideas. At my house, we buy frozen fruit and "dry grind" it in our food processor so there are no big chunks. Then add a little milk or non dairy creamer and some equal or splenda and it's like having ice cream. Smoothies are another way to get lots of fruit and protein into your boy and they are great in the morning, esp with some protein powder.
http://pediatrics.about.com/cs/growthcharts2/l/bl_ibw_cal...
Stephanie had great advice!
I wish you much success!