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

Adding physics is detaching mesh from parent. This is how Engine works maybe. It have nothing to do with default scene root as far as I know.
If you just want to make changes into static mesh of different pickups, you can declare a public variable of static mesh type inside your parent blueprint and then you can add a desired static mesh while using it in level.