From my point of view, this comment is the key to the whole issue. If tags for shared notebooks were automatically placed in their own distinct namespace by default it would solve the problem of tag pollution, removing the motivation behind the current limitation. Plus, it would really improve the tag auto-complete experience (both in the main programs and in things like the clipper), since if this option were chosen, those shared notebook tags could be suggested for autocomplete only if that notebook was selected. (And so you could feel free to create a large number of tags, which is often valuable for shared (read: work) notebooks, without worrying about bogging down your personal tagging process.)
In the meantime, a workaround to that problem is to add a unique prefix character like % or ^ to all tags in a given shared notebook. If you have many shared notebooks, you can use the same prefix character for all, followed by the notebook name. Another option if you decide to go the route of using keywords instead of tags is to keep a master 'keywords' note listing all your 'official' keywords in whatever structure you prefer. Of course, these sorts of manual processes are more prone to error.