Sounds like he likes U of M the most, and he got a named scholarship (which can help him stand out for competitive tech jobs and internships). Large classes in CS are kind of the norm at most major universities due to the demand. I don’t think USC will give much more individual attention than U of M.
I went to Pomona and am familiar with many CS majors (it’s our second most popular major), so I can talk about experiences regarding it. Many CS majors turn down famous schools like Cornell, Berkeley, Mellon, etc to come to Pomona because they desired a well-rounded liberal arts college experience. Pomona does not admit by major, so a student could study whatever they wanted among its offerings, regardless of what they listed on the application. This fosters an especially interdisciplinary and exploratory perspective which is tougher to find at a big university.
Class sizes are a big difference. 0% of classes at Pomona are over 50 students, compared to 10-20% at the other schools. He’ll be on first name terms with every professor he takes a course with and even many he never does. It’s a system made possible with the small classes and exclusive focus on undergraduates. On the same end, Pomona has nowhere the course selection and broad research interests of the larger schools, even when nearby Harvey Mudd is added. If he is looking for a broad CS degree, Pomona will serve him just fine, but if he wants a specialized track or courses within a specific field, it might not be possible at Pomona.
Research is very easy to come by at Pomona. Access is not the issue. I would guess a higher percent of Pomona students participate in research than students at the larger school. The opportunities are designed to be in close advising with a Pomona professor, and help students find the maturity/skillset to do independent work for graduate school. Every year, about 10-20% of the CS majors from Pomona go to graduate school, pretty much all of which are elite (MIT is the most common destination), and I think the level of rapport helps for writing dynamic letters of recommendations. More Pomona students win NSF graduate fellowships, Goldwaters, and Churchills (the top science undergrad distinctions) than most of the schools you referenced, despite the former being much, much smaller. You can’t get those without being a strong STEM student and established, distinctive undergrad research, so clearly the students are coming out well-prepared. The challenge is that by its nature of being a small school/department, you will not see the breadth of research interests at Pomona. Mudd adds more professors with their own research interests, but still much smaller even when combined. The emphasis is not on producing publications or innovation as might be the case for graduate level universities (though it’s certainly possible to get published- many of my CS majors have). Students mitigate that by applying to REUs and summer opportunities at other schools, but someone could prefer being with a professor well-aligned with their topic for all four years.
The other 80-90% go straight into the workforce, which is the popular option with a CS degree. On-campus recruiting for tech jobs is very strong. Mudd is the home base for tech recruiting across all the colleges. I can’t think of a single CS major who wasn’t able to land a job or internship at a prominent tech company. As it goes in general, it’s important to build a portfolio of key side projects, learn outside the classroom, prepare for the technical interview, and whatnot, but there is a network of alumni and a close collaboration among students making success easy to come by. The connections for U of M and Berkeley and Cornell will be easier to identify, but Pomona and Mudd are surprisingly strong (the latter ranked #2 for presence of alumni working in Silicon Valley per capita, after Stanford).
I was admitted to UT Austin, which is also a major university with just a silver platter of opportunities, the ideal location, etc. I visited and felt that it was overwhelmingly large, preferring the close-knit intimacy of Pomona. Many students will find Pomona and Williams to be a suffocatingly tiny. They don’t want the high-touch experience (my best friend went to Berkeley. He called Pomona “coddled”). It totally depends on your S’s personality and thoughts on the differences in perspectives among these schools.
My gut instinct based on what you wrote is he likes U of M the best, not to mention it’s the cheapest option. Berkeley/Cornell are more prestigious, but not so much more that it’d be a detriment to pick U of M. I’ll let other informed posters discuss specifics regarding the curriculum at each school. Thought I could say a little about the LAC side of things!