My switches are now working reliably by making some configuration changes in the configuration.yaml like so:
zwave:
usb_path: /dev/ttyUSB0
device_config:
light.kitchen_ceiling_lights_level:
polling_intensity: 1
refresh_value: true
delay: 3
I’m using a slightly-modified version of the scripts posted by @mfdutra to monitor for double/triple clicks and to trigger events in response. The result is very fast (sub-second response time) and has been reliable thus far.