Best practice for node comparison for more than 2000 nodes
I do not know of a query execution time limit, so I will assume you meant php's max execution time.

If the clone search does not need to be instantly updated, a good approach would be to run the query on cron and cache the results, which means running a single query to fetch the data, process it, and save the results for a quicker fetching at a later time. Cron disables the execution time limit and will run indefinitely in the background. 

If the site's cron runs once a day, the clone search results will be up to a day old.

Some resources to give some direction:


hook_cron - do your processing in this hook
Cache API - set and get cache data