The implementation depends on how you handle a duplicate.
Here I assumed that the last accessed copy would be the most valuable one to the users. For the purpose of housekeeping, I'd remove "( )" from the Filename of the elected copy. I haven't actually tested it, so please try it with care.
$files = gci c:\users\*\Downloads -include "* (*).*" -Recurse | Where-Object {$_.name -match "^.*\ \([1-9][0-9]*\)\..*$"}
foreach ($file in $files) {
$fileOrgFullName = $file.Directory.FullName + "\" + ($file.BaseName -replace " \([1-9][0-9]*\)$", "") + $file.Extension
if (test-path $fileOrgFullName) {
$fileOrg = gi $fileOrgFullName
if ($file.LastAccessTime -gt $fileOrg.LastAccessTime) {
cp $file.FullName $fileOrg.FullName
}
rm $file.fullName
} else {
ren $file.FullName $fileOrgFullName
}
}