That's it! And as I suspected, I'm an idiot. I am so used to changing everything within logic itself it didn't occur to me that my MIDI keyboard could have programmed settings that would stick between uses (it's USB powered, so I didn't think it had the ability to remember things). But apparently it does.
I just needed to reassign the mod wheel from velocity (132) to modulation depth (001) and the problem vanished.
Thank you for tolerating my stupidity! And sincere apologies for sending you down a dead end.