Can a Visualforce page that uses a standardSetController be redirected to (with a list of records passed in) from anywhere other than a list view button?
This was mentioned in a post from Skuid that documented the way to do it on this page.
You could go the route of cramming a bunch of Ids into a URL however, browsers have a maximum URL size which could cause problems for you.
Ideally, I'd recommend combining the two VF pages into a single page. That's probably the best bet. Create a wizard-like experience where they take action on a virtual page before the contents are replaced with a second virtual page.
You could flag all of the records before the redirect and then re-query for those flagged records on the destination page.
You could try to pass in a query to the new page via a URL. This is not ideal as it opens a window for SOQL injection. Even if you escape your query before using it a savvy user could edit the query to get to records you may not want them to get to.
ApexPages.CurrentPage.getParameters(). I have no idea if this works but you can bet that I'll be testing it when i get time and posting my results here.