Taxi to Rome would be rediculously expensive -well over €120. Take the train from Civitavecchia for €9.50pp. Sorrento is a good 90min drive from Naples (traffic is murder) - why not catch the ferry straight across the bay? Or there is a train called Circumvesuviana which goes there.
Can you give more info. about ferry. How far is Civitavechia from Rome? You say across bay?
You are getting confused: Civitavecchia is the port for Rome - it is an hour away by train. You catch the free bus to the port gates and then walk 10mins down the sea front to the train station.
In Naples you are docked right in town, and right next to the ferry terminal where you can catch the ferries to Capri or across to Sorrento. This site will give you ferry times http://www.italyheaven.co.uk/campania/ferries.html.
There are two trains an hour to Rome, which also stop at St Peters and you can use the same train ticket on the Rome subway and buses. For train times see http://www.trenitalia.it/en/index.html as they do no run exactly 30 mins apart. It is more like 20mins then 40mins. Bargain at €9 return (or thats what it was last year). If you get off at St Peters get on the bus at the station and get off at the second stop, walk under the underpass and you are in St Peters square. You will be there quicker that the coaches from the ship.
When you dock in Naples there is a tourist information desk grab a map from there and you could ask there advise,the city is straight in front of you as you leave the docks,to your left as you exit is a hop on hop off open top bus city tour if you fancy that and further round there are the local ferry booking offices you have a good choice of destinations and the prices seemed to be reasonable you can book for Sorrento there best of luck?
Make it easy on yourself and take the excursions - especially with a three year old. Naples is a very busy and unorthodox city and I would take the excursion from the ship which drops you at your special train which then takes you directly to Sorrento. You have a guide which brings it to life and have no hassle.Equally for Rome the trips allow you access inside St Peters but if you go on your own you will probably have to queue for two hours for the privilege or just decide to miss it (happy in the knowledge that you have saved a few quid). I worry about these people who are so concerned in saving a few pounds that they miss the very point of their holidays. We have also been on several cruises in which people have organised their own trips and have missed the ship and had to pay to get themselves to the next port - not good economy!!
Don't do it in Italy had a friend who boasted that it was cheaper by train which was true, but as wildcat strikes are frequent the trains stopped and the taxi back was £120 pound and that was six years ago. Also ships only wait for their tours if they are late if you do your own thing and are late you have to get to her very expensive.
There are other reasons why some of take or make our own travel arrangements other than cost cutting. We as a large family group dislike being herded around on a 60 seater coach all day & prefer the freedom of the private tour/taxi/train, whatever. I do agree a DIY trip to Rome in one day, unless your ship is overnighting, is not for the inexperienced. But this fear of missing the ship , by some is overstated in my opinion & as a family group of 6 with between 35 to 50 years cruising behind us, we've always got back with no problems. To Bailey who's friend paid £120 for a taxi, we save at least double that between us, on virtually every tour we take. Total that up over the years & we could charter a Helicopter & still be in pocket if we needed to rush back to ship.
We visited Rome by train and allowed plenty of time by intending to catch a return train with at least 2 more to spare if that went wrong! Wild cat strikes meant that we were back with only a few minutes to make the half hour walk back, but it was with great relief that as we were running along the platform, we noticed what seemed like hundreds of others doing the same - many of them crew! It seemed that with so many delayed the boat couldn't leave anyway and had to delay due to the numbers missing! I think they had to wait for the next train to arrive as well. Providing that you allow a good margin of error, there shouldn't be any problems.