Why doesn't Airport reconnect after sleep or shutdown?
The problem got partially better on its own, and it's not clear why.  There were also a lot of old networks in the list of previous wifi networks in System Preferences, and it helped to delete them.

The complete fix, however, ended up being to go into the list of wireless networks (in System Preferences > Networks > Airport, Advanced) and move the desired network up to the top of the list so it was joined first.  There was one called "linksys" on top that was matching a neighbor's network, and then failing to get internet access for some reason; I think it was added a long time ago for a different network of the same name.

I thought I had tried this before, but either something changed or I didn't actually try it.  I'm asking this question to help me troubleshoot someone else's computer, so I'm not aware of everything that might have changed since I originally posted the question.