I give you a real example, is easy.
I have this site:
www.quintadolago.com/
I have this type of content:
-Simple Article w/ Image
-Simple Article w/ NO Image
-News
-Events
-Villas
-Rentals
-Newsletters
-Brochure PDF
-Slideshow
-Contacts (w/ Map)
So this means that I have different fields for different types of content.
This also means that I have to create different templates for this types of content.
USUALLY they are intrinsically connected.
The same happen to the categories.
This is how FC works:
1-the user chooses the TYPE OF CONTENT this means that specific fields will be present DEPENDING on the type select.
2-the user fills all the fields
3-select the primary and secondary categories.
4- saves
This is the correct way:
1 - type: villa
2 - primary: Villa , secondary: villa
The problem is that in the front end we can override the category like you are saying, so there is no problem there. The problem is in the backend.
The user can do this:
1 - type: villa
2 - primary: news, secondary: events
lol this does not make sense, the templates are just not ready.
----
Micker another problem in the front end is that I have usually 30 modules in my template and I have to say in all of them to not APPEAR in the FORM MENUS
----
My suggestions of solution are:
1 - Override the form in the backend per type of content with the categories locked / hidden
2 - or in the front end when we create a FORM MENU find a way of not using the JOOMLA TEmplate, this is because we usually have so much JAVASCRIPT that they interfere in the from.
3 - there was a component called Flexy MY CONTENT or something like that,but they just didn't keep upgrading it.
Resume: the problem is that the user can insert articles in categories that are not supposed to be in the backend.