1. The only way I know how to do this is through embedding the dashboard and passing in yesterdays date through the URL string. (Would be nice to not have to do this if Tableau ever enhances parameter functionality)
2. There isn't really a way outside of scripting an XML hack on the TWB.(Also something that would be nice for Tableau to add)
2.a For scenarios like this I also embed the viz in a web page.
I then use an HTML dropdown box that is populated by a query directly to my data source with a select distinct on the field that I need.
Hope that helped