As expressões «sem carácter» ou «com mau carácter» estão corretas e são equivalentes.
Por caráter1, entende-se genericamente um «conjunto de traços psicológicos e/ou morais (positivos ou negativos) que caracteriza um indivíduo ou um grupo» (Dicionário Houaiss). Regista-se também este vocábulo com o significado de «maneira habitual e constante de reagir, própria de cada indivíduo; índole, personalidade, temperamento» (Infopédia), e, sendo assim, uma pessoa «de/com mau caráter» é um indivíduo de má índole ou com mau temperamento. A palavra pode ocorrer também na aceção de «sentido ético; coerência; honestidade» (ibidem), e, portanto, uma pessoa «sem caráter» é uma pessoa «sem sentido ético, coerência, honestidade».
Acrescente-se que mau-caráter é adjetivo composto (com uso em contexto informal) com a mesma aceção dada a «pessoa com mau caráter/sem caráter»:
(1) «Ele é um sujeito mau-caráter» = é um sujeito que tem um mau caráter.
1 Caráter é um substantivo que se grafa, de acordo com o Acordo Ortográfico de 1990, sem o c mudo.