Barcelona is 6 hours ahead of EST. When you look for airline tickets, the times posted will be correct for the airport you are flying out of and in to. You don’t have to figure any time differences.
DCL usually gives a recommendation as to what time your flight home should be after if you fly home on disembarkation day. However, there are people who book earlier flights, hand carry their luggage off the ship, and book their own airport transportation so that they can make an earlier flight. You’ll want to check the itinerary for the time, but I believe the two DCL cruises that I took from Barcelona cleared customs by 7:30am and people were allowed off the ship then, but nothing is guaranteed.
When I cruise, I usually come in at least a day early and stay at least one day later so that I don’t have to worry about flying out on disembarkation day. Depending on the airline you choose, an afternoon flight from Barcelona probably won’t get you to PA until late. If you can stay an extra day, it allows you to get an early flight out so that you will probably arrive home by early evening. Good luck with your decision.