No, I'm not saying that you would want to use GlowScript VPython. You need access to the full Python ecology. I was only pointing out that the rendering aspects of Jupyter VPython are almost entirely handled by the GlowScript JavaScript and GPU machinery in the browser and put almost no load on your server. Jupyter VPython runs with CPython2 and CPython3.
Can you give a specific example of what you mean by "some of the infinite loops are difficult to interrupt"? I'm not sure I've seen an example of that, unless you're referring to the fact that Binder itself is problematic, in that depending on the day or time of day performance can be terrible, because it's basically timesharing.
As for widgets, in the Binder collection the programs "Buttons, sliders, and menus" and "RGB-HSV colors" and "Textures" (for example) currently use Jupyter widgets. An even simpler case of run/pause is the "Rug" program, where simply clicking the canvas pauses or runs. However, easy to use widgets have just been added to GlowScript VPython and will soon be available in Jupyter VPython (along with the new 3D text object), thereby making the same widget code run in either Jupyter VPython or GlowScript VPython. The new GlowScript widgets are button, radio button, checkbox, slider, and menu.
Here's the documentation for the new widgets: