If he has difficulty getting out of bed in the morning on a regular basis, or if he seems irritable or tired during the day, it is likely that he is not getting enough sleep. There are a few rules you should enforce: No television in the hour before bedtime. TV is a stimulant for most children, and watching it just before bedtime can "jazz them up," and make it more difficult to fall asleep. The same goes for listening to loud or harsh music. Some soft, quiet music is probably okay. Reading for 20 to 30 minutes is a good way to settle down for a good night's sleep. The last rule is that he should not get into bed until he is truly tired. It is very frustrating to be limited to a bed for one or two hours when you are not ready to fall asleep.
It is very unlikely that the sleep problem is caused by a food allergy. The biggest food issue, caffeine, you have already addressed. Chocolate can also serve as a stimulant, and I would avoid large amounts of it in the hours before bedtime.