Hello,
The way band locking works is that it disables carrier aggregation altogether on that technology of the network (4G, 5G). The culprit of the varying speeds is most likely one of the bands that your device aggregates, and when you lock onto B3, it most likely remains stable because the band that is causing instability is eliminated.
We do have a cell locking procedure described here, however, it is not really supported on 5G devices, and it does not eliminate the root cause of the issue, as the secondary bands cannot be chosen when carrier aggregation is active (only the primary).
However, you can blacklist the bands, so for example, if B1 is the one that is causing the issues, you can navigate to Network → Mobile → General, select the network type as 4G + 5G, and select the manual band selection. Include all 5G bands and all 4G bands except the one that is causing the issue. This may result in lower speeds, but a much more stable connection.
Let me know if any additional information is needed!
Best regards,
DaumantasG