How can I limit the taxonomy terms of certain nodes?
Write a module that implements hook_node_validate. The implementation of that hook can check the integrity of the term associations by calling taxonomy_select_nodes and report any inconsistencies by calling form_set_error.

Beware of the limitations of taxonomy_select_nodes:


  This function requires taxonomy module to be maintaining its own tables, and will return an empty array if it is not. If using other field storage methods alternatives methods for listing terms will need to be used.