Сначала вам нужно знать, что чтение содержимого файла, а затем его запись в другой файл - это не то же самое, что копирование файла, файл - это больше, чем просто его необработанное содержимое, почти все файлы имеют связанные с ними метаданные, и когда вы читаете содержимое файла и записываете его в место назначения, вы теряете эти метаданные. Поэтому, если вы хотите скопировать файл, используйте метод copyFile, иначе вам придется обрабатывать метаданные самостоятельно.
Во-вторых, два метода теоретически должны иметь одинаковую сигнатуру производительности, хотя на практике может быть различия между ними в разных условиях (разные операционные системы, разные размеры файлов), однако беспокойство по этому поводу - скорее преждевременная оптимизация. Однако для повышения производительности лучше использовать асинхронные c версии этих методов.
copyFileSyn c не позволяет напрямую изменять дату создания файла, но вы можете сделать это, используя fs.stat