Per coincidence I found the following: if you use EAUTIL.EXE to strip a file of all of its EAs, then, the object will automatically revert back to the most specialized class there exists when the object is again displayed in a folder.
To strip EAs of all .ICO files, do something like this: for %F in (*.ico) do @eautil.exe %F NUL /S
There is a drawback to this: because ALL EAs of a file are stripped in this way, so is the .LONGNAME EA which is the EA holding an objects long name/title.
So, the easiest thing would be to write a tool that strips a file of all its EAs except for the .LONGNAME EA (or equivalently, one that saves the .LONGNAME EA, strips off all EAs and restores the .LONGNAME EA).