Local presence detection (Bluetooth / Wifi / ?)

I want to switch off some light and electrical devices as soon as nobody is at home.
I have 2 Smartphones which can be tracked for this purpose.
One restriction is that I do not want to use a cloud to report my location.
First idea is to uses the presence detection from my router (fritzbox) and check if the device is in the network.
The problem with that is, if the router looses internet connection or DNS fails, all Android devices loose the wifi connection and would be considered as away after some time. Can the android companion app report wifis in the vicinity? This would then work far better as this would not be affected by the loss of internet.
Second thought was to use a bluetooth tracker in combination with the router.
I am using a raspi 4 with onboard bluetooth. If I understood it correctly BLE devices change the mac adress so I cannot pinpoint it to a device.
Is there a way to pair my 2 smartphones with the rpi bluetooth and use this a presence detection?

Not sure if this helps, but have ESP32 boards set up in each room, then as the phone enters the room it controls automations, for example when my wife phone enters the kitchen it set the lights for her. When she enters her office it raises the blinds.

You are probably over thinking it. If your router loses DNS (unlikely as it is) how is HA then going to turn off your lights and stuff unless they are all zigbee or zwave. As far as I know there is no easy way for Bluetooth to work across the whole house from one point, unless you live in a very small house, without wifi.

So I would be answering these questions honestly and rethinking things

How often does your router loose DNS?
How often does you internet connection go down?

if either of these is more than a few hours a year then you need to investigate getting a better router and/or service provider

they are all zigbee and have fixed IPs. I am not using hostnames.

How often does your router loose DNS?

Every day it has to reconnect to the internet in the night & I am using PiHole which sometimes needs some maintenance.

How often does you internet connection go down?