I bought this set of silicon spacers and they have been working well for me.
For me a low-cost part that made all the difference was replacing the stock bed springs with silicone dampers, such as these (note: order them somewhere else than Amazon if you can, such as here, or if you're in Europe this would be a good place).
The reason is that the springs have play - the inner diameter is 6mm, while the bed screws are M3 - so even when you level perfectly, the bed can move. With the silicone dampers I can level the bed and it will not move for weeks.
I do have a Creality BLTouch v3.1 and it helps, but mainly because my stock bed is not flat (more like a bowl). Mesh leveling is the answer here and has solved my problem, but it may involve compiling a new firmware.