«Quem canta seus males espanta», sem vírgula, é a forma correta da frase.
Tal como a consulente sugere, a oração «Quem canta» é o sujeito da oração matriz – «seus males espanta», razão pela qual não se coloca a vírgula a separar os elementos constituintes da frase.
Trata-se de um caso de uma «frase complexa caracterizada por uma estrutura de subordinação, em que a oração [Quem canta] é um constituinte da oração superior, com uma função sintática própria»1— a de sujeito da oração matriz, o que se pode testar através da sua substituição pelo pronome indefinido alguém, o que permite verificar a natureza do constituinte da oração: «Alguém [quem canta] espanta os seus males.»
1 Ana Maria Brito e Inês Duarte classificam esta oração como relativa livre (Mira Mateus et al., Gramática da Língua Portuguesa, Lisboa, Caminho, 2003, pp. 675-676).