O problema era que, embora estivéssemos retornando os cabeçalhos adequados, ainda não estávamos realmente fornecendo o intervalo de bytes solicitado. A maneira correta de fornecer o intervalo de bytes correto com um aplicativo de nó (que está fornecendo o áudio do podcast) é adicionando as opções "start" e "end" ao objeto Readable Stream:
fs.createReadStream("podcast.mp3", { start: 0, end: 999 });