1. Yes, it's the argument passed to the database query. The lower, the better. Low limit usually speeds up the response.
2. Well, I would not recommend that either. Displaying so many things at once on one page is not a good idea, you would get similar problems with each layout.
For this task, I would consider some kind of infinite ajax scrolling and filtering plugin, if anything like that exists. Something like that would only display for example 20 products at once, and if the user clicks on the next page or “show more” button, it would dynamically load more. He could then paginate through all the 2000 products without crashing the browser – because only 20 is displayed at one time, and others are not.
I'm not sure if a plugin like this exists though.
The search was not exactly made for displaying large numbers of data, it's rather an search engine to display quickly a few possible results for the user in real time.Best,
If you like my products, don't forget to rate them on codecanyon :)