This behavior is caused when Veeam is configured with a different target datastore then what the replica VM currently resides on. Veeam creates a folder to hold the data on that datastore because it does not see anything there. Once it goes to write the data and work with the replica, it finds the correct location via the reference ID of the replica VM.
The solution to this is to verify the datastore location in VMware, and then edit the replication job to match this. After doing this, you can delete the empty folders, though it is highly advised to check each folder individually before deletion to verify they are in fact all empty.