While sailing on another cruise line, I spent a few days in Rome prior to the cruise. I took the express train from FCO to the Rome train station. A few days later I took the train from Rome to Civitavecchia. It took perhaps an hour.
The train station is across from the port, but you need to board a port bus to get to the berth where your cruise ship is located. This is far easier than it sounds, and the busses are waiting by the entrance to the port.
So, the train is a reasonable option, as the bus will drop you by the station, you take a Trenitalia train to Rome, then get on the Leonardo Express to FCO. You can check the Trenitalia website for Civitavecchia Porto to Fiumicino Aeroporto.