Here's the way I think of it...
When the static port is blocked at a certain altitude, the pressure of that altitude is trapped inside the static line. Therefore, when you are at an atitude above where the blockage occured, the indicated airspeed shows slower than True Airspeed vice versa, just as you said...think about this statement for a minute...
The higher up you go, the less dense, the air is. In other words, the same amount of air (number of molecules) will take up a larger volume, because they are not packed as tightly. So, when above the blockage altitude, the trapped air in the static line is higher than at that altitude, so it takes up
less volume than the ambient (outside) air.
Now think of it as a smaller volume of air in the a/s indicator diaphram than would normally occur at that altitude, resulting in it not "inflating" as much, resulting in less needle displacement.

. Let that sink in and it should click! It's perfectly logical.
Hope that helped. If not, let me know and I have another way of explaining it...