My son is making a decision on which school he should attend. He is a very smart student, wants to be an engineer, and is very involved in sports, church, and other activities. He has two choices for college. One is highly rated academically and is considered one of the best in the country. It is small (1,500 students -- all engineering.) That's the good part. During a visit to the school, he learned that most students have 10- to 14-hour days of school with classes, homework, and studying. The students said that although there is some time for other activities, the emphasis is on learning, which comes at the cost of other things. Add to that the additional requirements from AFROTC (needed for the high tuition) and time seems even shorter.
I vote for the other school. Engineers need to be as well-rounded as possible and develop the broadest set of people skills, as well as technical skills. It sounds like your son is an extremely serious student as it is. Keeping him in a larger school environment will most likely make him as balanced as possible as he develops in all aspects of his life -- academically, socially, emotionally, and physically. It is really important to keep high achievers like your son balanced and able to enjoy themselves. This outlook will make him more versatile when he graduates and enters the real world.