I also find that the more programming you do, the less that they learn to free play independently. My program is always more lax in the summer, and I find they free play beautifully lately. What if you warned him and said "ok DCB, after circle time it is going to be time for you to go play and have fun with some toys while I go do xyz". I find a lot of kids respond well to knowing what comes next and if he starts to fuss I would leave him for a bit and try to ignore and do what you need to get done.