One thing I have noticed over the years is the number of associated module relationships.
For me, I don't need bugs or cases as part of the contacts. While there are options to customize this I don't think that is the best option.
Could you add a single binary flag to the subpanel to "hide" subpanels?
This could by a simple check box in the subpanel in Studio. In turn this would set a "1" or "0" in the relationship table. The coding, database field change, and other options would be very simple. By just having a "hide" option none of the underlying "plumbing" needs to be changed. When the Module Page is rendered it would be one simple code check to determine whether that subpanel is visible.
This would alse be very low risk for upgrades because "eliminating" a subpanel would not be a true customization. If someone wants to add it back in later all they have to do is uncheck the "hide" flag for the subpanel and it is available again.