For embed package which placed at Packages folder, Unity will import everything from it. That means it’s fine to develop your sub-packages no matter how you layout your sub-folders. The only problem is that Unity Package Manager does not understand your sub-packages, you will see a single package entry in editor UI. But it’s not a big deal for development.
Since UPM is just a derivative from NPM, we can get benefits from NPM solutions. When it comes to publish sub-packages to private registry, consider using Lerna, which is used by Babel, React for managing sub-packages. Lerna will help you publish and manage version across all sub-packages. Your package consumer will see your sub-packages in the registry as normal package.
I haven’t tried this approach myself for UPM, but it sounds worth to try out.