Passing Ownership of a UObject disguised in a UInterface pointer

You could add a Clone() function to the interface in question.