What time interval are you using for the timelion request? Maybe a larger interval will help so there is less data to process on the server?
This does sound like a performance bug with the way timelion is structured. Can you open a bug report at https://github.com/elastic/kibana/issues/new?template=Bug_report.md and please provide examples of the expression that is causing performance problems.
Thanks,
Nathan