Being under 25 myself, and having to rent a car on Long Island this summer, I HIGHLY suggest Enterprise. Many Enterprise locations do not have a surcharge for drivers 21 and over. The locations that do have a surcharge it is usually only $10-20 a day - except Boston, where it is a pricey $25 a day, and Newark which is $30 a day (FYI - JFK and LGA have no surcharge). Even the $10 a day surcharge is a rip-off, but it was a million times better than the absolutely insane surcharge of $75-85 a day that I was quoted by Hertz, Budget, Alamo and Avis for an under 25 rental in the state of NY. (The price of car I wanted to rent was only $65 a day - the surcharges were higher than the rental price!!) Enterprise's website lets you recalculate a price if you are 21-24 (or under 21 in some places) and shows the daily surcharge and the total cost.
Dollar is another chain to consider. For a renter over age 21, the surcharge (for NY state anyway) was reasonable - $18.95 a day. We ended up going with Dollar, simply because the little Enterprise location near the Islip, NY airport didn't have hours that worked for us to return our car. Doing a bit of checking, the surcharge seems to be about $18-27 a day, with the average close to about $20. On their website at the bottom of the "rate" page when pricing a car, it shows the underage driver surcharge/rules under rule 3.
Most other companies require underage drivers to call the reservations number to get the underage surcharges.
If your friend will still be 20 when he comes next summer, he may face much higher surcharges. In the state of NY, Enterprise has no surcharge for drivers 21 and over, but if your UNDER 21, the surcharge is a whopping $97.00 a DAY! OUCH! Hopefully either he or his girlfriend will be over 21.