I found a solution that worked for me here:
Strange Defrag error 0x80070057
Open an Administrator command prompt and make use of fsutil:
fsutil usn deletejournal /D <volume pathname>
fsutil usn createjournal m=<max-value> a=<alloc-delta> <volume pathname>
Eg :
fsutil usn deletejournal /D C:
fsutil usn createjournal m=1000 a=100 C:
After using these commands I was able to defragment C: without an error showing up in the event viewer. I'm not sure if this is a permanent or temporary fix, and someone mentioned in that thread that it didn't work with a server so YMMV.