Hi Jef,
It is a common request. The ease of using SharePoint does have some drawbacks like this - if you have permission to a document library you can see all the documents and open them if you dig around a bit.
Your idea of using workflow to move the form to a new location is valid, I know others have done that before. Although what if the workflow stops for some reason and you don't find out for some time? Depending upon how sensitive the data is that may not be the best option although better than what you have now.
You could have a read only view of the form that says "you do not have permission to view this form". Only certain users would be able to actually view the form. Users could still download the XML file to their computers and open the document up in notepad though.
At Qdabra we have a tool called "Database Accelerator" (DBXL) that does allow you to have fine grained permissions. The documents get saved in SQL and you can use a data view web part in SharePoint to allow users to find the documents, this will work for you although you don't get the same function as a document library in SharePoint.
DBXL does have a nifty "SharePoint mapping" feature however that would allow you to save the document in a different library than where the template is that they open. So with DBXL and SharePoint mapping you could have users open the template from one library but save it in another library that only certain people can see. DBXL has the permissions to save to that library not the end user. That might actually be a very workable solution. If you want a demo of this you can send me a private message and I can set it up.
Ted