"Interestingly, in regard to flying back to Oregon, it seems cheaper to book separate itineraries from Palermo to Frankfurt, then from there to Portland. "
Be very careful. If you plan to do this all on the same day, and there's any disruption that causes you to miss your flight from FRA to PDX, you are stuck. You'll have to buy a last-minute one way ticket home; the cost of this will be much greater than any savings. If you do want to split your ticket, it's prudent to spend a night in Frankfurt. When I went to Sicily, I bought separate ticket from Catania to Rome, spent a night in Rome, then flew from Rome to Philadelphia the next day. This worked well.
And be careful not to confuse the "real" Frankfurt airport (code FRA) with the Frankfurt Hahn airport which is quite far away (code HHN). If you fly into HHN, you will definitely not make an easy connection to FRA!
Note that Catania is a larger airport than Palermo with more flights, so if you plan to end your Sicily time near there, you will have more options for your next step (be it Malta, Sardinia, Corsica, or home to the US). Taormina is a great place to visit; it also has buses direct to the Catania airport, or it's an easy drive on the autostrada. There are two other, smaller airports in Sicily; Trapani in the west (mostly budget flights) and Comiso in the southeast (small with few flights).
Do use Chani's tip about checking the Wikipedia page for each airport to learn about options. Of course, not all flights are daily, so you have to check directly with the airline before making any definite plans. There are three airports on Sardinia (Cagliari, Olbia, and Alghero, from largest to smallest); four on Corsica (Ajaccio, Bastia, Calvi, and Figari); and one on Malta. I'm not sure about connections between these four islands, since they represent three countries; you may have to connect in places like Rome or Nice.