What is the best way to move files from a staging site collection (document library with no content types or base content type) to a target site collection (with more structured document libraries with content types)?
The content will need to get indexed (meta-data added) one way or another. If it is a large set of documents with the needed information in the document name, then I would likely write a custom console application that can move items from the source to destination and set the appropriate content types, and meta-data fields.
If it is completely unstructured data that needs to be manually indexed, or if there are only a few files then it is something I would likely do manually.
Third party tools can be useful for moving content between site collections or environments, but they will not setup to perform the logic you will require to change the content types and pre-set the meta-data fields as needed.
Open the document libraries with windows explorer and then create folders and drag-n-drop the files as needed.
This is the fastest way to move the documents; but does have a few problems. For instance, any metadata and custom fields are not transfered. If that is not a problem, it may be a good option for you.
This also doesn't address the desire to have the documents assigned to a specific content type. I haven't checked, but I would expect the documents transferred in this way to take the default content type. So, copy in batches, one content type at a time, and change that content type to be the default for the duration of the copy.
The other answers here address your specific question but I would like to add that if moving files/lists from staging to production is a common occurrence that you might not have your environments configured properly.
In a typical scenario like this, the staging environment (aka "Authoring") is actually where all production content changes are done. It starts out life as an exact copy of production (or production is a copy of staging, whichever). Changes are done in Staging and only in staging, then pushed to the production environment via SharePoint's publishing jobs. This lets SharePoint do the heavy lifting and gets you out of the content migration business. It also preserves all metadata related to the new/changed items.