What could be the reason for delays in successive events?

It could very well be, thank you. I will be looking at the precise timings of the fired events on HA side.

Do you know whether homeassistant.turn_on (or off) is synchronous? That is, does it return immediately to the caller and runs in a thread of its own, or does it wait for the action to be finished to hand back?

Please see my question How to toggle a group of switches as a whole? and the solution I finally use (How to toggle a group of switches as a whole? - #6 by WoJWoJ) – I noticed the slow down appearing afterwards but this may or may not be related.