As soon as our kids' molars came in, our dentist put sealant on them. It helps a lot with cavity prevention. Those crevices are very difficult to keep taken care of properly.
Sometimes it is genetics and not cleaning habits, too.
Not sure what your routine is, but ours is morning brushing and before bed brushing. Lunch got skipped a lot, unless we were going somewhere after. There are some foods that are worse for teeth, too. These days (knowing about it) I cringe when I see moms giving their young kids raisins to snack on. They just stick to the teeth like tar, and are like pure sugar down in all the crevices of the teeth. VERY difficult to clean well. When my dentist mentioned that to me one day in passing (just using them as an example of 'sticky' foods --most people just think of candy, but raisins are probably worse than some candy).. I stopped buying that stuff.
Another TERRIBLE thing for teeth is soda. Forget the issues with calories or High Fructose Corn Syrup or diet additives, etc... just from the standpoint of teeth, it is TERRIBLE. It is very corrosive to the enamel on teeth. In fact, you shouldn't brush your teeth right after drinking it. You should rinse your mouth/teeth with plain water then wait a bit, before brushing. The soda actually softens the enamel so that brushing can cause damage if you do it right away.
He should be able to rinse with something like ACT. Just make sure you read the directions and explain them fully to him (no swallowing, rinse for 30 or 60 seconds, don't gargle--rinse the TEETH with it, no drinking for 30 minutes after, etc).
And don't feel guilty. It happens.