Fetch USGS data every 15 minutes (or as it updates), and serve it with rivers.run. This would allow flow data to be loaded instantly. The current code could be kept around as a backup in case the data is old, and flow search links could behave as in #2 (or just break, like they do now.)
If no searching or sorting has been done by the user, apply the flow parameters once the data loads.
Currently, you can not create a working advanced search link that uses flow paramters.