What's funny is that when I explain Bitcoin to people, the first question they have is "So what actually IS a bitcoin", and I have to explain that there's no such thing, that it's just a ledger with entries, and that the base-unit is actually a Satoshi which makes 1 BTC be 100million base-units. Then the reaction to that is usually "Oh so it's like futuristic "credits" from the sci-fi movies", which isn't all that inaccurate really. And people grew up watching all these sci-fi movies where in the future you just have ambiguous "credits", and that's how they relate to it.
If the base-unit was 1-credit (which is just 1 satoshi), then it would solve all these problems. You'd just buy 1million credits for like a dollar, and there would never be a need to adjust any of this stuff. Even if we start calling it mXBT, at some point that's going to become "too expensive" as well. Why not just use the actual base-unit and call the whole thing by its real name?
There are only 2.1 quadrillion "base units" that will exist, ever. This is clearly not enough in a growth situation as you suggest, so the base unit will have to be changed anyways. Better deal with fixed-value units than volatile-value ones.
Are you saying that 2.1 quadrillion credits/satoshis aren't enough? By all accounts there are only several trillions of dollars in existence, maybe in the tens of trillions, but that's it. Say that we want to measure in cents, so that it compares to one of Bitcoin's base-unit, then we're still talking about some hundred trillion cents, or maybe a quadrillion. And that's after massive inflation. I would think that 2.1 quadrillion credits is more than enough.
Even if that's true, that's a problem with Bitcoin itself, not its nominal denomination. I still think that referring to it by its base-unit will make it easier for everyone who's new into it understand, and allow them to get in at any price-point, rather than having to buy 0.5BTC or 0.1BTC. They could get in with 1 dollar if they wanted to. All without the mental barrier that the single unit is actually 1BTC=100million