Problems with inherited DefaultSceneRoot in blueprint, and physics on child BP

Yes, I had read that before. It explains why subcomponents are detached when the game starts (and it makes perfect sense), but it still doesn’t solve the problem of child blueprints inheriting a useless DefaultSceneRoot that can’t be removed or overridden.

What I am trying to do is define behaviour for a type of object (in this case, an item which can be picked up), without specifying any visible component of that object yet (as that should be defined by child blueprint classes.)

I want the child classes to be able to inherit the behaviour (I can be picked up), but define their own shape, physics, etc.

However, doing this means that I can no longer teleport the object around (e.g. when dropping or placing it) because the mesh is no longer attached to the root.
I can also no longer loop through all of the components of the object to highlight it when the player looks at it, because, again, the mesh is detached from the root.