That's a smart point ! If we can count on the fact that there will never be a hard fork changing this total, of course.
Assuming we stick to the 64 bit size for a value, keep the 21 million Bitcoin cap, and we expand to the maximum number of decimal points offered by a 64 bit number we could comfortably expand the resolution to
2
64 = 18,446,744,073,709,551,616
= 2,100,000,000,000,000,000 "millisatoshis"
So a factor of 1000 or about 2
10So that would lead to about 2
61 addresses containing a millisatoshi each.