Contradictory reports from MySQL that a binlog file exists
As it turns out, the problem was that we were connecting to an old (wrong) master.  The previous master was domain.com, but many months ago, we migrated to db.domain.com.  It seems that we were erroneously connecting to domain.com.

We’re using autossh to set up SSH tunnels for our replication.  To confirm that we were connecting to the old (wrong) master, I executed telnet 127.0.0.1:3305 on the slave.  From this, I could see that the reported MySQL version matched the version from the old master.  I did a full reboot of the slave which seems to have fixed the problem.  I think the root of the problem was likely due to some DNS quirks on our network - it would seem that when the autossh connection was established, db.domain.com resolved to domain.com, hence the symptoms of connecting to the wrong master.  (Certainly, these DNS issues on our network are something to look into)

Note: Major thanks to @Andrew for his answer on the original question: https://dba.stackexchange.com/a/140259/55530