I often use vc log and then f (log-view-find-revision) to view a
specific revision of a file.

The problem is the file is checked out to the same directory as the
original file with a backup file name (~, polluting the directory with
such files if multiple versions are perused.

These are backup files, the vc function uses that name too
(vc-version-backup-file-name), so their placements should honor
backup-directory-alist which is currently ignored.