CDR files can't be fixed once they have been corrupted. You can restore a corrupted file from a backup, if you've done it or using the autosave if the software is created. No application will ever recreate the missing content or additional data from the file because that's not possible.
You can try apps that say they can fix them, but don't get your hopes high for a successful operation.
Use the applications on the following result list to download them: http://software.informer.com/search/fix+cdr