It's been years since I have been in Scouting, but I think you do need a counselor for all of them. Each badge earned has to have a merit badge card that is signed off on by a counselor. That certifies that the requirements have been met.
I am in Heart of America Council. The council used to maintain a list of merit badge counselors. Also, each troop should maintain a cadre of counselors. You don't have to use a counselor in your own troop, but often it is easier that way.
One way to make sure that your son has access to a good selection of merit badge counselors is to become the Merit Badge Counselor Coordinator for your son's troop. This person recruits people to become counselors. It's not difficult becoming a counselor. You need to know something about the subject, and you must have some training from the BSA. Simple!
Hope this helps!