Impossible to have a container that is either Copy or Drop depending on T?

It isn't "explicitly prohibiting", it's a limitation of the type system. I'm not sure if it's possible to alleviate this problem, but there exist workarounds (for which you explicitly asked for, hence my answers).