I've seen two different pendrives go bad in the exact same way: they were written up to 30-40% of their capacity, producing no RW errors in that part. I was using both pendrives each few weeks/months as "mild" storage for backing up some files. And then one day I decided to copy an additional large file (such as a VM image), filling the pendrive up to 80-90%. And at that moment the new large file would immediately start giving I/O errors.
In the most recent case I calculated a checksum of the problematic file and got a different hash than the one given by the original file generated on my PC. I then deleted the problematic file from the pendrive and copied it over again, and again got I/O errors and bad checksums. However the other old files in the pendrive are still good. Using CHKDSK on the NTFS partition didn't reveal any filesystem error. So it looks like the part of the flash that was empty for a long time somehow suffered memory rot, and the flash controller is unable to detect or mark these blocks as bad.
The second of these pendrives was of a very well known brand. I bought it to replace the old generic one that died with the same symptoms. To avoid problems I decided to buy a quality product, but apparently spending a bit more on good pendrives didn't change the outcome.
So my question is: Is there something about the nature of flash memory that can explain empty blocks going bad after some time in the shelf?