Мне кажется надо запрещать есть на ночь, например мой ужинает не позднее 19.30, частенько просит к 21 еще покушать, предлагаю кефир. Просто такая же проблема как и у вас, только рост и вес на 10 см  и 10 кг меньше (ему почти 9) поправился за последние месяцы, тоже дашь денег в школу, накупит шоколадок, перестала давать, но он и не просит особо, в магазин с ним перестала ходить, т.к. постоянно просит вкусненькое в виде булок, мармеладок, шоколадок.