I would fly both ways to Sicliy vs. taking the train, since you'll waste A LOT of time. Alternatively, you could take the overnight boat from Civitavecchia (Rome's port town) to Palermo, which leaves around 8pm and arrives in the morning, using the money you would for the hotel on the boat/cabin tickets.
We spent 10 days in Sicily two years ago and are going back for 3 weeks this summer. We didn't stay in Catania, but did drive through it on the way to Syracusa, so I can't comment on what there is to see there or the safety of it. It is a built up area, though. Taormina is interesting, though, as are Etna, Piazza Armerina, Agrigento, Erice...
There is plenty to see in Palermo. We only got to stay one night last trip, so I want to go back. The city does have a different atmosphere. I got the impression that restoration and revitilization were completed VERY slowly. The city is not one of the cleanest, but we didn't feel particulary unsafe. We stayed at the Massimo Plaza Hotel (www.massimoplazahotel.com), which was centrally located. We walked a lot in one day and evening. We had a great dinner in an odd neighborhood at a restaurant that is part of the Buon Ricordo group. The Palermitani we encountered were friendly.
The oddest thing I found was that the streets were empty at night. Usually in Italy, the streets are busy at night. But Palermo was like a ghost town at night. Maybe it was because it was summer and people were out of town, but I doubt it. I don't know that the undercurrents are in that city, but we did find it odd.
If you are only going to have four days and want to do justice to one place, I would pick Palermo. The archaeology museum, the duomo, Monreale, wandering the old streets, a day trip to Cefalu' (about 45 minutes by train), ruins at Solunto...
Just my thoughts! Ciao, Kristy S.F.