Not sure why you're using a map/reduce for this, typically a M/R is for processing large volumes, yes, but on a record by record basis. Sounds like you have a large volume of data you want to output in one CSV?
In which case you probably just want to use a scheduled script. Apart from a 10mb limit with files in the filecabinet you should be able to dump all your saved search data in to one file and write it to the filecabinet.
If you're getting a timeout it sounds like you're exceeding the script time limit and you be better served checking that and either re-scheduling the script with a mechanism to know where to carry on from or using the built in yield functionality.