It's not easy to decouple correctly from frameworks, on some level, your solution is on the correct road though :) I'd suggest to split the source folder by bounded contexts having in the end:

- src/User/Domain

- src/BoundedContextFoo/Domain

Ideally the whole Domain layer should not depend on nothing except for itself so that your business logic is always safe from changes :)

--

--