Basta fazer "xm save DOMAIN" para descartar o estado de execução do domínio, não o estado do disco que o acompanha. Esse estado de execução incluirá caches e buffers de disco não salvos. Carregar o backup da imagem salva em algo diferente de um disco / volume não tocado será uma receita para falhas e corrupção de dados.
Eu precisava fazer algo semelhante ao que você sugere, mas não consegui evitar curtos períodos de inatividade, mas eles são sempre mais curtos do que o tempo equivalente para uma máquina real.
Eu faria uso de LVM e snapshots (faça seu domínio ter um volume lógico como um disco)
$ xm save DOMAIN DOMAIN.SAV
$ snapshot the domains' Logical volume
$ xm restore
$ backup the lvm snapshot using dd
$ delete the snapshot
Você pode querer dar uma olhada e ver como eu fiz isso no código-fonte do Dupe .