I may have found a solution (it is too early to tell). I had nhs covid tracking app which i think was the culprit. I deleted the app and find my iPhone stopped tracking location services. If you have any covid tracking app, then try deleting it and see if it makes a difference.
also go to settings, tap on your name, go to find my, then toggle off share my location. Then just there tap on find my iphone, leave find iphone to on but toggle off find my network and send last location. This also helps for me. Now despite find my iPhone is location services being turned on, there is no purple arrow for past hour or so.