I understand, since 2 different stereotypes could have different sets of tagged values (but some could be shared).
You could simply mandate that only "columns" in the CSV matching tagged values for a stereotype (nominated in the import process by a stereotype column selector) will be imported. Using empty fields for invalid tagged values could be supported, yet mix and match in the one import.
For example, say you have 2 stereotypes - "application" and "server" (doesn't matter what the base UML classifier is).
Application has "IT support person" and "business function" as tagged values
Server has "IT support person" and "ip address" as tagged values
The import CSV file could look like this (1st row is column header):
element_name,stereotype,IT support person, business function, ip address
intranet,application,david teague,ERP,
w21223,server,john taylor,,192.0.0.1
The above is just a sparse matrix where common tagged values can be populated across stereotypes.