What am I doing that causes zsh to silently change to vi mode?
Sigh. Exploring my own situation further, I think I was hitting escape. I think zsh was in vi mode all along, but more specifically, it was in vi's insert mode! If I go to a brand new editor and hit escape, I find myself in vi's command mode.

If that's the case, I'm still interested to know why set -o | egrep "on$" doesn't indicate that we're in vi mode.

EDIT: double-sigh. I originally wrote my question with all references to bash, having completely forgotten that years ago I changed my default shell to zsh, which is mostly the same. I went back and edited the question to be more clear, and then googled again, replacing bash with zsh. I quickly found this: https://unix.stackexchange.com/questions/197839/why-does-exporting-vim-as-editor-in-zsh-disable-keyboard-shortcuts

Lo and behold, my .profile has EDITOR=vi, which I put there about two weeks ago. I removed that line, and hitting escape no longer puts me in vi command mode.

Better yet, I followed the instructions given on that answer and was able to restore my EDITOR setting without borking up zsh. Yay! :)