Cause:
Somehow, those files' datetime stamps got corrupted and have a Modified or Created datetime stamp in the future (usually year 2038). So when Google Drive sorts the Recent files by date descending, these corrupted files always show up at the top.
Solution:
On a computer where those files are synced:
Move the files to a directory outside of Google Drive directory, so that the files are deleted from Google Drive cloud. Wait for the sync to finish deleting the files.
Change the Modified, Created, and Accessed datetime stamps for those files to a non-future date. (See below for detailed steps.)
Move the files back to the Google Drive directory, so that the files are re-uploaded to Google Drive cloud again. Wait for the sync to finish uploading the files.
Reload the Google Drive > Recent list again to verify that the Modified date is no longer in the future.
Changing datetime stamps on Windows:
2a. After you have moved the files to a directory outside of Google Drive, open a powershell window in that directory.
2b. (optional) List that files that have future dates.
ls * | where { ($_.LastWriteTime -gt (get-date)) -or ($_.CreationTime -gt (get-date)) -or ($_.LastAccessTime -gt (get-date)) } | select LastWriteTime, CreationTime, LastAccessTime, Name
2c. Set the desired datetime stamps (replace the date with what you want).
ls * | foreach { $_.LastWriteTime = (Get-Date "12/31/2016"); $_.CreationTime = $_.LastWriteTime; $_.LastAccessTime = $_.LastWriteTime}
2d. Verify that no more files have future dates.
ls * | where { ($_.LastWriteTime -gt (get-date)) -or ($_.CreationTime -gt (get-date)) -or ($_.LastAccessTime -gt (get-date)) } | select LastWriteTime, CreationTime, LastAccessTime, Name
Changing datetime stamps on Mac:
2a. After you have moved the files to a directory outside of Google Drive, open a Terminal window in that directory.
2b. Set the desired datetime stamps (using format YYYYMMDDhhmm):
touch -t 201612310000 *
2c. Verify that the dates look good. The first date is Modify Date, which should match what you set above. The other 3 dates are Birth/Create Date, Change Date, Access Date, which may not match Modify Date, but just make sure they are not in the future.
stat -f "%Sm | %SB | %Sc | %Sa | %N" -t "%Y-%m-%d %H:%M:%S" *