The only way around the high costs as others have found is to take the train directly from the airport into Rome central station (or a transfer spot before the main station) and then take the train out to Civitavechhia. Fine if you don't have a lot of luggage and have the time. Seems like van sharing is the cheapest but there is a monopoly by the taxi drivers here so there are no bargain rates at all. One other option is to overnight in Civitavecchia at a hotel that has pick-up and drop off services. It looks like it can be a pleasant low key spot to spend a day before your cruise leaves.