Most of the time when I was moving databases it was either that I missed the --delete option or they simply corrupted. Copying them again fixed the issue most of the time.
On a different occasion I had to vacuum all dbs which fixed the issue.
Yes, if the old db-wal files are still there you have duplicate data, these wal files are merged into the db files then the node is stopped. The --delete parameter on the last run while the node is stopped is not optional for this reason. So if you omitted it, that is likely what caused the corruption. If your node hasn’t run since, I recommend copying the db files manually, with the node stopped of course. That should fix it.