Have you considered doing so through a workflow argument?
Couple options come to mind:
1. If the PDM file "category" doesn't fit into a workflow permission set, then a file can't be added into that workflow. If there is no other workflow available for the file to fit in, it shouldn't be allowed.
2. A Workflow transition argument would make users have to find a new location for file.
Using workflow and categories you can prevent them from checking a file in based on the file type but you cannot prevent them from saving the file into a folder. Kind of the same thing but not a true solution to your original question. I have folders that people have no permissions on and they still save stuff in there occasionally but they can't do anything with it after that.
Make sure assembly files going into the \swlib\ directory do not meet the conditions of any categories, and/or optionally workflows.