Something got screwed up and now the rows of my DBF beyond #1210 are offset by one, meaning that each shape has the attributes that should be assigned to the next shape. If I were in a spreadsheet program I would be able to select rows 1210+, copy, then select 1211+ and paste. But I can't do this in the QGIS attribute table editor, and I can't find an editor that will save shapefile DBFs without damage.
Apparently I have too little mojo to answer my own question this early.
Never mind - I fixed it in Excel. I had previously tried swapping columns in Excel and it didn't work, but I guess rows can be edited.
The only minor issue is that the column titles are now all caps. But all the expressions that call them still work, so I guess that's not a problem.