Base class variable conflicts with Derived class variable (same name)

This sounds like you’re hitting on something related to UPROPERTY only. I’ve had this with static variables - you can’t use UPROPERTY on them.
(But you can then expose them via a static getter, with a UFUNCTION Macro)

I suspect it would be down to the fact that in order for you to access these two variables, you’d need to use fully qualified access and if you’re duplicating the name of a member variable in a derived class, from say a UObject, then that would have implications throughout the engine (as any of the variables that might be accessed, aren’t likely to be done so with fully qualified member access).

As several have commented in this Stack article, it’s not deemed terribly good practice, which I would also wager is why Epic decided not to allow it.