This app was mentioned in 3 comments, with an average of 1.33 upvotes
I use these beacons with the Beacon Locator (also available on F-Droid).
I've been running it for about a year and it's been a relatively solid implementation. Once in a while I have to rerun the "Out of Range" task.
Beacon Locator can't be used as a profile. It can execute tasks though. So, there's an "In Range" and "Out of Range" task. Both tasks update their own timestamp variable. The profile is true when the "In Range" timestamp is greater than the "Out of Range" timestamp.
BLE beacons is what I'd use. From a quick search around you can setup a beacon with esphome: https://esphome.io/components/esp32_ble_beacon.html then use something like https://play.google.com/store/apps/details?id=com.samebits.beacon.locator to watch for beacons and that is apparently (https://www.reddit.com/r/tasker/comments/6k8g2k/ibeacon_radbeacon_a_simple_way_to_use_beacons/) able to link up to tasker so you can keep your tigger control the same as how you're currently doing it.
I haven't tested any of that, but that's what I would try first if it were me.