Important - First of all: if you SD-card is failing and the errors accumulate over time (there is a new error on a file that was working ok before) try to use the card as little as possible, because there is the chance to make the problem worse by making a corrupted file "more corrupt" thus making it more difficult to recover.
First make an "bit by bit image" with any data recovery software that can handle SD-Cards. And try to do the recovery mainly from the image this might give you better results and won't put so much stress on the card. The whole thing also depends on the quality of the recovery software. A good software will not only read all bits without errors, but will try to read out the correct value of a bit with an error by, for example, trying to read them multiple times.
All the files that couldn't be recovered "as a whole" can be at least recovered partly from the image.
Once you have the image you can go on and freeze the card or do whatever other (good and bad) solutions are out there on the net.