Full datastore: Errors after 2nd GC even though all chunks were restored

That must be it. Which, I guess, means there's nothing I can do to revert this.
Agreed.

If that assumption is true, I guess I am lucky. :)

At this point, is there even anything I can do to get into a clean state again or will I keep seeing errors when running GC and Verify?

There's some chance that all (or some) missing chunks will be recreated by the next backup.
So after all backup jobs cycle you can manually issue Verify for the backups marked as faulty. If missing chunks have been recreated, the backups will be marked as OK. If not, they will be incomplete (though not worthless, as I have already pointed out). You will not be alarmed every day because most likely your verification schedule doesn't verify all backups every day, just the newly created ones and then periodically (e.g. monthly).
In case you don't need the incomplete backups, you can delete them (you will not lose chunks used by other backups) and the following GC will remove them and errors will stop.

I think that also GC will stop showing errors after it have cleaned up the situation.
 
My experience shows that corrupted chunks are renamed ...number.bad (where number is 0, 1 etc when there are more than one bad chunk of expected checksum).

So maybe these *.bad files have already been deleted by the following GC.
If no good version exists, the GC keeps the bad ones around as long as they are referenced.

It is more likely that the sweep phase simply deleted the chunks that were moved back, because mv doesn't update atime.

At this point, is there even anything I can do to get into a clean state again or will I keep seeing errors when running GC and Verify?
One more thing you could try is to scan your disks for the missing filenames with a data recovery tool. If there is not a lot of IO on your root disk the data might still be there.