If I understand you correctly:
1. Allow users to create/subscribe to a portal through a centralized interface.
2. Connect that user's account to that portal
3. Allow users to manage their subscription
But the portal expiry is preventing them from logging in and accessing their specific portal after it's expired. Which is by design within DNN by the way (very handy for multi tenant DNN installations when client don't pay their hosting bill).
I think you're onto something with the centralize management on your website. The trick is connecting the user's account (or some other key value) to their specific portal so they can't mess around with other portals, or subscribe the wrong one, etc.
A long long time ago I was looking into something similar and found this: http://www.onyaktech.com/Products/tab...
While the client project this was intended for never actually went into production, I tested the process on a development box and it worked pretty well. Even if this module isn't exactly what you need - perhaps it could give you some ideas for your concept.