I've been doing quite a large project using Pis, and had to use the same lot of SD cards.
After lots of trouble, I could only throw a few hundred SD cards to /dev/null and switch to another brand. Half of the SD cards of the "bad" brand had read errors right after first writing to them. Or, they refused to be written right away. The "good" SD cards did expose less space to the operating system, the "bad" ones (of the same nominal size!) were 10% or so "bigger" to the OS.
I had the feeling, that the "good" cards kept some spare "sectors" to replace bad sectors when needed, while the "bad" cards just addressed all the space, bad sectors just being bad.
As SD cards in every day use are usually FAT formatted, this might be working. FAT is such an old file system that it feels responsible to deal with bad sectors. Modern file systems rely on the mass storage device to find and correct errors by itself.
So, I would suggest to save important data somewhere else, and buy another SD card of a different brand.