AFAIK the unique values applies to the variable values regardless of file extension.
Nope, that is an indiscriminate setting - all or none. The easiest way I know to handle your request is to create a template that creates the PartNo for all new files except PDF/STEP files which would need their own Data Card.
Mark this I note possible. A workaround would be to setup a second variable that is not unique, you could have the PartNo be passed automatically to this other variable, so for the most part it would be a duplicate, except on your exception scenarios