A thought from someone with a much much younger child... You mentioned that one class is giving him homework assignments that take an hour to do. How many assignments does he have in a day? How much does he do that looks like traditional schoolwork?
To me, an hour long homework assignment sounds like a lot for a 7 year old. Especially one who may have memories of zero real work from a too easy traditional school experience. I know a kid who is interested can easily dive in for hours, but it is different when an adult, any adult, tells you that you have to.
Did you go through a deschooling period?