Get FREE email communications from Fodor's Travel, covering must-see travel destinations, expert
trip planning advice, and travel inspiration to fuel your passion.
No train, might be possible by bus but take ages. Use skyscanner.net for cheap European plane tickets, looks like TAP is the only option if you want a direct flight.
I you don't want to go up to Madrid, you may take a train to Sevilla or Huelva and go on from there by bus, either up to Lisboa or up to Tavira from where you can continue to Lisboa by train.