Sorry about the delay in responding, every so often, one or too I miss.
These are a few ideas, not necessary all pointing to your problem
A component instance can update a component definition via the right click context menu “save as”
A “scale definition” on an instance will update the definition scale to that instance.
A component instance should retain any of its values to matching attributes in a swap with component definition, whereas a reload will place all the defaults.
Depending on how your component is built, the use of “current” and sub component references will “update” an instance to match any attributes in a swap.
Placing a component instance with other instances of same definition present should automatic become unique. Its quite likely the old or new definition is held within the file in question. Before inserting the new instance, make sure there is not a previous definition in the components home tab.
Instance names plays an important part in the option and attribute titles, so if the name attribute is not used, the instance name will be displayed. This can be an advantage to a workflow,
To help with reuse of component parts, you can use the generic ‘parent!attribute’ instead of ‘mycomp!attribute’ or ‘another!attribute’, etc.
If you reuse sub components make sure they are unique and edited in the original file, as editing them in separate files and returning them to the original or some other will bring them in conflict with hidden component definitions. In home tab one needs to expand the view.
Make sure all sub components are unique (context menu)
Groups are very problematic when copied as they can be connected like components, so use them carefully or not at all.
when swapping a component make sure you are going to the right folder, I have on occasion had two or more folders and got them confused.
However if this is still an issue for you, you can private message your components and I can sort them out in confidence