I agree with most of your post, but I don't think the problem is bugginess.
The real problem is the short-term fix nature of games. As you say, they're (mostly) not designed to be one-shots, with the majority of players playing through the game for a couple of weeks each, within a period of a few months of each other. That is why bugginess is tolerated, not the other way around. It's not worth the time to fix non-critical edge-case problems in situations. By the time the bug can be fixed, and tested, it'll only be useful to, say, 10% of total players.
In multiplayer games (and other games where the player is expected to engage with the game for months at a time) then you find that there are frequent updates and bug fixes.
The real problem is the short-term fix nature of games. As you say, they're (mostly) not designed to be one-shots, with the majority of players playing through the game for a couple of weeks each, within a period of a few months of each other. That is why bugginess is tolerated, not the other way around. It's not worth the time to fix non-critical edge-case problems in situations. By the time the bug can be fixed, and tested, it'll only be useful to, say, 10% of total players.
In multiplayer games (and other games where the player is expected to engage with the game for months at a time) then you find that there are frequent updates and bug fixes.