If the slowness seen as being a problem for your visitors then why not flip it around? Change their expectations about what flight search is.
The search is obviously going to take a while because your site is so powerful and you're doing things that no one else can. Adioso isn't a dumb search engine that makes you do all the work - it's an automated travel agent that will churn through hundreds of flights and email you with a selection of the very best in a short amount of time. It even understands language like a real travel agent.
To add to this, I'd suggest adding an 'email me' option if things are slow on the site. Waiting on a website longer than 20-30s is painful but receiving a well formatted email within 10mins (with the same info) can still feel like magic.
I'm working on something with the same concept but for a different market. There's no way for me to tap into 3rd party databases (for now). I'm setting it up so the results will be added to your own personal search-page where (only) you can view them after x-time. From there you can choose to view more details and/or close the deal. Not as fast as live-search, but I'm communicating it from the get-go.
Even if you don't take it to this extreme there are simpler changes you could make. The search timers on the result page could instead show a total count of searches performed. Then you're framing it in a positive (look how much work we're doing for you) instead of a negative way (see how much of your time we've wasted).
The search is obviously going to take a while because your site is so powerful and you're doing things that no one else can. Adioso isn't a dumb search engine that makes you do all the work - it's an automated travel agent that will churn through hundreds of flights and email you with a selection of the very best in a short amount of time. It even understands language like a real travel agent.