I swapped the stepper with a known working stepper and the problem appears to have vanished. I haven’t run the program while actually cutting anything, but I did a dry run “in the air” and the Z axis operated flawlessly.
The Z stepper could have a wiring problem though. I totally forgot that I had to put a connector on the stepper since it came with bare wires. I’m going to try putting a new end on it and see if it works. It could be that there was a loose connection. Or maybe the stepper is bad, who knows.
I did see that Lulzbot has put the stepper I was using on a clearance sale in their online store. They appear to have switched to a different manufacturer. Could be nothing, but it is interesting!