moralizer [or moraliser]

noun moralitzador.