The issue for was resolved by changing a config setting for my usb microphone interface. My Focusrite Solo Gen 3 was set to sample at 192 khz. Changing it to 48 khz fixed the issue.
Best I can guess, 192 khz was too much for the zoom client to deal with. When it got overwhelmed, it was switching back to the onboard Mac microphone. When that happens, zoom apparently switches the camera to onboard Mac camera at same time.
With the laptop lid closed, it just crashed zoom altogether. With the lid open, my zoom window would change from my extended monitor to the laptop, and then back again.
Long story short, setting external audio interface to 48 khz eliminates that behavior. And 48 khz is fine with me for voice use.