can't edit Contact Details for records with a custom subtype (Error: One or more contact subtypes have been de-selected from the list ...")
It seems to be problem with data how its saved in database. The settings for Custom group might have been corrupted during upgrade or some scenario are not being handle during upgrade. To debug or fix this you will need to do some troubleshooting


Check each Individual and sub types custom groups and re save the settings for each such custom groups so that the settings are saved correctly.
Check when updating contacts does the data from all custom data gets deleted or only the subtypes
Check if Contact subtype are pre populated correctly on edit screen of contact and also Custom group fieldsets gets loaded of subtype and non subtype.
Put debug statements to check what values are loaded in smarty variables for $oldSubtypes


HTH

Pradeep