Ich habe mir unter binary_sensor/platform ping einen eigenen Device-Tracker angelegt:
binary_sensor:
- platform: ping
host: IP des phones
name: Phone-Name
count: 2
scan_interval: 60
der recht zuverlässig funktioniert und spästens nach 60s merkt, dass das iPhone nicht mehr im WLAN ist.
Evtl. wäre das ja eine Lösung für Dein Problem.
Alternativ kann ich Dir iCloud3 empfehlen, wenn Du ein Apfel-Produkt hast.