It's just a side effect of everything having addresses via id and url properties, and the Host header in HTTP, as far as I can tell.
The notion of an "Instance" isn't one that's actually codified in the ActivityPub specs. Instead you just have Actors, and the "domain" of an actor is simply the hostname of the actor's id or url (iirc)
It's only things like Webfinger and HTTP Signatures that bring forward this notion of an "instance" being a "domain" into existence