Derailleur indexing problem - doesn't change from 8 to 7 but skips form 3 to 1
Good description of the problem, I think you've done everything correctly so far and the issue you describe is normally a misaligned derailleur hanger. It doesn't take a lot of misalignment to cause this issue.

I don't understand how the shifter cable tension can be correct for the gears at one end of the range but incorrect for the other end of the range.

You're right, it normally shouldn't because the 8 speed shifter will pull exactly the right amount of cable for the derailleur - shimano 8 speed will always work with Shimano 8 speed. If the gears behave at one end of the cassette they should behave at the other end. Whenever I work on a bike and have this trouble I think 'derailleur hanger' and proceed to straighten it.
You straighten a derailleur hanger with a specific hanger alignment tool, which references the wheel rim itself. A difference of +5 mm at one side of the rim and -5 mm at the opposite side can give problems with shifting like you describe; for a diameter of 622 mm this is a very small bend of the hanger.
Normally this is a rare enough job to pop into the bike shop for a quick adjustment, not least because you will take even greater care not to bend the hanger in future. During a pandemic you can do your own cost/benefit.
As long as the limit screws are set properly, this problem is mostly a bit annoying rather than dangerous. You might find an indexing setting where it's a bit sluggish to go into an easier gear on a certain sprocket, but an extra half push of the lever encourages it all the way on. That's a valuable skill if you don't already do so, but reliable indexing obviously preferred.
Here's a photo of such a tool in action for your reference (it's not a link (!) though videos exist of course)