But this puts the file in my staging index, and not my working directory, right?
It would put that old version both in the index and the working tree.
if I now run git commit my repo will update to have the old file back in place, but my working directory will still have the newer file
No, it will have the older version of that file.
I suppose I could do a git checkout -- filename.html to get the two back in sync, but is this best way to do it?
To get back to the latest version, you would have to:
git reset HEAD -- filename.html # remove it from the index
git checkout -- filename.html # restore latest