How to add serialized data to engine class in a compatible way?

I have added custom data values to UPrimitiveComponent that I’d like to serialize, but that (for reasons long to explain) I cannot add to the class as UPROPERTY fields. I have tried to serialize them by customizing the UPrimitiveComponent::Serialize(FArchive&) method along these lines:

Ar.UsingCustomVersion(FMyCustomVersion::GUID);
if (Ar.IsLoading() && Ar.CustomVer(FMyCustomVersion::GUID) >= FMyCustomVersion::AddedCustomData)
{
    Ar << MyCustomData;
}

The problem with this is that any assets containing UPrimitiveComponents that I save with my custom version of the editor are not loadable by the original Unreal Editor (I get “Package […] uses an unknown custom version and cannot be loaded for the AssetRegistry”). If I had been using UPROPERTY, the original Unreal Editor would have been able to skip the unrecognized properties and load the asset.

Is there a way I can serialize added custom data in an engine class, in a way that the assets are loadable by the original editor, and without using UPROPERTY?