I can help!! We go to Hilton Head often, and our daughter goes to the College of Charleston. We've made the drive a few times; in fact we're doing it this weekend, to combine a relaxing day near HH with taking her back to school!
The drive is about 2 hours. We usually take the back roads, which are very scenic, but only two lanes in a lot of places. If you take I-95, you can drive faster, but you have to go out of your way to get to the Interstate, so it takes just as long. I would definitely recommend staying over at least one night. There is MUCH to do there; trying to cram it all into one day is next to impossible, especially if you have driving to do on top of it.
We like to stay at the Marriott Courtyard near the marina. It's not RIGHT downtown, but it's not too far out. We're usually able to get a decent rate using AAA, but we've been able to snag it using Priceline, too. The biggest drawback is that it's too far to walk to the downtown historic district, and parking can be a challenge.
Savannah is a great place to visit as well. You're right, it can be done as a day trip from Hilton Head. Charleston and Savannah are very similar in a lot of ways. Personally, if I had to choose one or the other, I think I'd go with Charleston. Another option is Beaufort, which is between Hilton Head and Charleston. It's a much smaller city, but still would make a great day trip.
Hope this helps. Just don't be surprised if once you get to Hilton Head you decide you don't really want to leave the island -- it's THAT nice!