Como referenciar uma imagem pelo nome especificado na configuração?

Você está certo; pensei que funcionava do meu lado, mas acho que não. :thinking:

Aqui uma alternativa: definir uma propriedade CSS personalizada via js.

document.documentElement.style.setProperty(
  "--hat-url",
  `url(${settings.theme_uploads[settings.hat_type]}`
);
body {
  background: var(--hat-url);
}

settings.theme_uploads conterá uma lista de seus uploads.
Por exemplo:
image

Em seguida, com base na sua configuração, você define a propriedade personalizada.

Note que, pelos meus testes, não funciona fazer url(var(--hat-url)), é por isso que passei o url() diretamente na propriedade personalizada.