If you’re using a SmartApp to relay commands then a 1-2s lag doesn’t sound too bad to me! You are right that using Z-Wave device associations, to get the devices talking to each other directly, is the way to go for a more snappy response.
Unfortunately, the configuration of association groups is typically unique for each type of device. You therefore need a device handler for your specific device types that supports association groups, which isn’t very common at the moment (as it’s an advanced feature). There isn’t going to be any kind of SmartApp that can configure device associations en mass, at least not for the time being.
However, I have written some device handlers that support setting association groups (using both the basic Association command class, and also Multichannel Assocaition command class). You may be able to take my examples and apply the code for your own devices:
-
Fibaro Dimmer 2 (which supports four multi-channel association groups): [RELEASE] Fibaro Dimmer 2 (FGD-212) - Advanced DTH (V2)
-
Fibaro Flood Sensor (which supports two association groups): https://github.com/codersaur/SmartThings/tree/master/devices/fibaro-flood-sensor
HTH, Z