My friend, don't be misled. It's not just numbers. 3.5, 3.7 or a 3. 3 are nothing more than numbers. There are numbers, for the most part, that will exclude you from getting into medical school, like a 2. 9....but there are always exceptions too.
He needs to be interesting. He needs to define himself in a way that is different from the rest of the applicants. All of us have done volunteer work in a hospital, well most of us. So, he can check that off, but that doesn't excite adcoms. If he volunteered for some social service agency because he really cared about the service they were offering, it would look better and give them something to talk about during the interview. Also, he should have interest outside of medicine, academics. If it's a talent or a sport, highlight that too. They want well-rounded individuals.
Has he done any research or independent studies. That's always good to do and a great way to secure a good letter.
Again, don't think numbers are the answer. Many people make that mistake. He needs to jump off of the page, they need to see an individual that is real, honest, compassionate, human.
And the 30 MCAT is not a rule. Nothing lower than an 8 or a 9 will do him fine. for instance a 10, 10, 9 won't kill him. I have a friend with 11, 11, 8 and he has 3 acceptances. And I met a guy with straight 9's and he's a second year at Temple.
He should also apply wide. He needs to write a great essay, a compelling essay. Avoid crappy essays that they receive all the time like how the death of his grandmother made him realize, blah, blah.. They get the dead grandparent essay all the time. Don't try to be poignant and emotional to win sympathy, but if he's overcome so legitimate hardships, he should highlight that. When writing, remember "less is more." Keep it tight.