Take a careful look at his hydration level. Dehydration will induce headaches and even mygraines. He needs to drink a significantly higher level of water than any other thing. You'd be suprised how many people think they've had enough fluids are actually dehydrated!! This is an all day, everyday thing...he can't get dehydrated today and then drink the right amount tomorrow and be hydreated--there's still a deficet...drinking the right amount for a regular day also doesn't take into account the extra demand with high physical actions when we increase the need for sweat.
Is he eating enough? Hunger, too, will inspire headaches. Check to see that he's eating on a pretty regular basis, more whole foods than not. One of my husbands favorite things to share with others is that increasing the servings of vegetables in a child's day will reduce the sypmtoms of "ADD"...so that's a double whammy for you.
Also, this may be more difficult to monitor, elimination is important, too. A colon does more than just produce and expell fecal matter. If it's not clearing out well enough, a person can notice headaches, tummy aches, and even anxiety symptoms.
The other thing for you to take caferful consideration of is the "cleaners" you're exposing him to. The common household cleaners have been conditioned to use are very toxic and noxious. They're so muchso that the military won't even allow them to be packaged and sent through the mail until the hazmat (hazardous material) training has been successfully completed. I suggest moving to a natural ecofriendly product like Shaklee (you can talk to be about that privately), seventh generation, or a homemade cleaner from vinegar and baking soda among others.
Check his eyes. Quite often when a child experiences migraines and headaches it a result of straining the eyes. If he doesn't have glasses he may need them, if he does a new Rx may be needed in either direction.
Is he sleeping well. Don't be confused on the lenght of sleep vs the quality of sleep. Is he sleeping WELL. Is he fitful. Does he have problems breathing which wake him often. Again, nutrition and hydration can help in this regard. Is he worried about something maybe he's hiding from you?
Take him to a chiropractor! Sometimes just one adjustment or two does the trick.
When he's having a migraine, firm pressure on the back of his head just above the neck will help to reduce the pain in his head...and there's pressure point in the webbing between the thumb and forefinger, the big toe and second toe, just outside the inside fold of the arm opposite to the elbow...all of which HURT horribly when touched, especially when experiencing a headache or migraine, but do work. You have to hold them for a few seconds at a time over and over for about ten minutes--he'll think you're ridiculously sadistic and maniacal, but it does work. He must drink water,too. I haven't met one yet this didn't work for but NO ONE particularly enjoys the process...only the relief.
Be open to the solutions and trust your intuition.
Hope that helps...