My apologizes, I think I misunderstood your initial point. I assumed that you were saying it wasn't possible to detect a click on an item in the created menu. I think you meant that it wasn't possible to detect a click in the chat window and use that event as a trigger for a pop-up menu.
If so, then I completely agree with your point. You need a way to subclass the chat window in order to receive notifications and have a way to react upon them (such as opening a menu). This is indeed not possible with pure Plus! scripting at the moment.
Injecting your own entries in the chat window's pop-up menus is another option indeed, but as you correctly state this will get you into even more trouble than using your own menus.
Perhaps a clever programmer could do some magic by modifying the process code directly (but I doubt that would be easy/effective), however the only possibility I see is to throw in an external DLL to subclass the window. This requires a fair amount of knowledge of C++ or Visual Basic or whatever native language you like, which even I don't have - I'm more a C# and scripting guy.