I have paid version Recuva and it works a charm, of course it cant recover everything! but it is a powerful tool.
You could run CHKDSK /R on the USB, as the USB drive may just be corrupted so cannot read the files properly and it is "possible" this may fix it.
I never use cheap USBs for long term storage, and I never pull a USB out (especially a cheap one) until I safely remove it as it can corrupt.