It’s a little different, but you can use ULAs to have a static subnet with static device addresses.

One of the biggest changes from IPv4 when I enabled IPv6 a while back was that it’s fine and normal to have multiple addresses per interface now. ULAs are not globally routable, so I think of them as LAN addresses. Another option that comes to mind is mDNS, but I think support for that is not as widely accepted.

Global addresses can change, just as your home dynamic IPv4 probably did from time to time.