There is nothing in that explanation that actually justifies moving/copying the executable file - there are simpler ways of achieving the same end result, and they wont get your program treated as malware either.

We don't know enough details to give complete solutions, but in simple terms you could alter the code that reads the files (there is no valid reason to need them in the same location as the executable file, just specify the location along with the file name). That would also reduce issues caused by other things, such as someone altering the shortcut to your program, or a component you use (such as a CommonDialog) automatically altering the Current Working Directory.