We have the same business need:
-today, we just control in our ESI Windchill to SAP workflow that there's only one affected object link to one CN
and route to a fix task.
But as we plan to use dated effectivities, we may be add this control in the CN workflow and in the post processing of the CN create/update wizzard. On more globally to create a Listener to totally veto the action on the PRE STORE event of the affected object link