Also have this issue. I’m using the single key no neutral model.
It worked fine for over a year then started to exhibit this behavior. Swapped it out with another piece I had in the other room and the problem went away, but came back after a month.
I think you’re pretty close on the root cause. My load is a DC ceiling fan with LED light. I only encounter the problem when the fan is on at low speed but the light is off. Based on user manual the power consumption is exactly 3W in this state. Essentially the switch can work fine to turn on/off like this, but will lose ability to turn off after being on for about 15-30min or so (never measured the exact time), which I call the paralyzed state. In order to recover, I have to increase the load, either by turning up the fan speed, or turning on the LED light using the fan remote. If I had clicked the Aqara switch any number of times during the paralyzed state (or toggled any number of times via App/Zigbee), the switch obviously ignores it, but will turn off within 1 second after performing the load increase recovery. The switch will not automatically turn off after load increase–it must have received a switch command during the paralyzed state at least once first.
What this tells me is that during the paralyzed state, the switch is still registering the keypress or Zigbee commands but is simply refusing to release the relay. So I don’t think it is a power loss issue to the switch electronics because the relay is clearly still energized the whole time, plus the switch remembers if it was commanded to turn off and executes it once load has increased. To me it seems like a logic/coding issue where somehow there is a timeout period after relay turning on where if the load drops below a minimum (3W) the electronics ignores all state changes.
There must be a shunt capacitor in there which the switch uses to power itself. I wonder if that can be replaced or adjusted so that the minimum threshold is 2W instead of 3W.