I fixed it, but would like to understand why. It turns out it was because my sway config references an output which doesn't exist. Which, was fine for a while, and I thought wouldn't cause issues at the time because I'm referencing it by it's identifier.
This is my output configuration:
output * bg #2d3429 solid_color
output "Dell Inc. DELL P2715Q 54KKD79R152L" resolution 1920x1080
I went through all the checklists of ascertaining the correct services were running and that env variables were set correctly.
I only figured out this was the problem because I finally noticed a flash each time I tried to screen-share on Vesktop which looked like a wmenu selection. I was able to make out that it listed the above monitor, and sure enough when I commented out that line things were fixed.
At the time I configured that monitor—which I only use very infrequently when staying at someone's house—I was impressed by the power of sway because I could reference the monitor by it's identifier and stow the setting for later without any futzing, but now...
As I mentioned, this WAS working. The output config is confusing for me at times, so is there a better way to configure? Or was I totally wrong and the fact that it was working before a fluke? Like, it makes me feel that there's a different problem elsewhere and I've just fixed one symptom, but maybe I'm crazy...