Hi,
I very much doubt this is a SoftDevice issue but sticking it out there as an Apple dev asked me.
Short story is I have users in production using an App connecting to NRF52810 and occasionally but not often iOS returns the value for a different characteristic. For this to happen at SoftDevice level it would have to be rewriting or iterating the Gatt table incorrectly I think (I don't rewrite it, it's configured at boot and that's it) with some sort of race condition. As far as I know it's never happened on Android.
Still worth a check if any similar behaviour has been seen before. SoftDevice is v6.1.0. I would use a later SoftDevice but Nordic refuses to make a minimal SoftDevice for DFU update or to opensource the softdevice so I can make one, so the version is stuck (rant rant).
https://developer.apple.com/forums/thread/817515
https://github.com/dotintent/react-native-ble-plx/issues/1316