You can take a train from Faro to Lisbon but there is also a bus service operated by alsa.es linking Seville at Lisbon.
The current timetable shows the following service:
Departure schedules (03/01/2009): SEVILLA - LISBOA SETE RIOS
Dept: SEVILLA 15:00
Arr: LISBON Sete Rios 21:15
These tickets should be purchasable in advance at the Bus Station in Seville or online.
If you want to travel in the morning, DAMAS/EVA operate the following bus service via Faro:
Dept: Sevilla 07:30
Arr: Faro 10:10
Dept: Faro 11:00
Arr: Lisbon Sete Rios 14:15
Tickets for the Faro to Lisbon sector may be purchasable in advance at Seville Plaza das Armas Bus Station as this was being advertised as a direct route on posters in the above bus station when I was there last week.