This may sound an odd idea, but offer an option to write zeros to all the free space on the volume. i.e. prehaps create a 1MB file full of zeros and then move it across the free space
Why? well some storage arrays detect all zero writes and use them to deallocated the space from a thinly provisioned drive, thus you allow the storage array to know there is no longer any data in those blocks