Problem using String

1.Is there a library to download to replace the broken one?

No. The library isn't broken. The underlying mechanism for dealing with dynamically allocated memory (free()) is.

  1. If not, is there a workaround

There is a patch that can be applied to fix the free() function.

  1. If nothing helps I have to surrender and stop using String?

That would be the best thing to do, given how little memory the Arduino has.