The setting is that $(M, \tau)$ is a tracial von Neumann algebra ($\tau$ is a faithful, normal tracial state) that is a subset of the bounded operators on a Hilbert space $H$. Let $x \in M$ be a self-adjoint operator. Let $\mu_x$ be the spectral measure of $x$ (with respect to $\tau$).
I am a bit confused about where the wrong step in the following "proof" that if $x$ is not invertible (i.e. $0 \in \sigma(x)$) then $\mu_x(\{0\}) > 0$. If this is true, then by considering $x - \lambda$ for $\lambda \in \sigma(x)$, it seems we would get that $\sigma(x)$ could only contain countably many points, which is false in general.
Suppose that $x$ does not have a bounded inverse in $M$, or equivalently that $x$ is not bijective.
For a self adjoint $x \in M$, it is a fact that $\chi_{\mathbb{R} \setminus \{0\}}(x)$ is equal to the projection onto the closure of the image of $x$ (or, equivalently the orthogonal complement to the kernel of $x$).
Hence, for $x$ to not be invertible, $\chi_{\mathbb{R} \setminus \{0 \}}(x) \neq 1$. As $\chi_{\mathbb{R} \setminus \{0\}}(x) + \chi_{\{0\}}(x) = 1$, this means that $\chi_{ \{0\}}(x)$ is a non-zero projection. From faithfulness of $\tau$, then $\tau(\chi_{ \{0\}}(x)) > 0$ and hence $\mu_x(\{0\}) > 0$.
As David said in the comments, the statement:
"for $x$ not to be invertible, $\chi_{\mathbb{R} \setminus \{0\} }(x) \neq 1$" is not correct. It could be possible that $x$ is not invertible and the kernel of $x$ is $\{0\}$ and the image of $x$ has dense range (but not all of $H$), so then $\chi_{\mathbb{R} \setminus \{0\} }(x) = 1$.
Basically I assumed the converse of: "if $x$ is invertible, then $\chi_{\mathbb{R} \setminus \{0\} }(x) = 1$"