OK, a quick status report. I did some additional research the past few days.
The bad news is that it turns out it is actually not possible to implement a sensible workaround for this in the SmartMenus code without losing some important functionality – and that is hiding the sub menus on touch devices (like iPad, etc.) when you tap elsewhere on the page. There is just no way to do it without listening to some touch* events on the document. I guess this is why the issue affects many other scripts and even popular frameworks like jQuery mobile.
The good news is that I actually found an existing open WebKit bug report:
https://bugs.webkit.org/show_bug.cgi?id=138816
and I posted a comment in the hope that it will be taken more seriously and fixed soon.
So, unfortunately, and I really hate to say it, there doesn’t seem to be anything else I could do about it right now.