Clearly $\omega'$ is continuous on $\{f+g > 0\}$. If $x\in \overline{\{f+g > 0\}}$, take a net $x_\alpha \in \{f+g > 0\}$ such that $x_\alpha\to x$. Then from the inequality $|\omega'(x_\alpha)| = \frac{f(x_\alpha)}{f(x_\alpha)+g(x_\alpha)}|\omega(x_\alpha)| \leq f(x_\alpha)$ we see that if $f(x) = 0$ then $\omega'(x_\alpha)\to 0 = \omega'(x)$. If $f(x)\neq 0$ then we already know that $\omega'(x_\alpha)\to \omega'(x)$ from continuity of $\omega$ on $\{f+g > 0\}$.
Thus from the following post it follows that $\omega'$ is continuous on $\overline{\{f+g > 0\}}$. Since $\omega'$ is continuous on $\{f+g = 0\}$ as well and both sets are closed, $\overline{\{f+ g > 0\}}\cup \{f+g = 0\} = X$, it follows from gluing lemma that $\omega'$ is continuous.
Remark: We didn't use anything about the space $X$ or that $f, g, \omega$ are compactly supported.
Here's an argument using open sets instead. Let $x_0$ be such that $f(x_0) = 0$ and $\varepsilon > 0$. Take a neighourhood $U$ of $x_0$ such that $f(x)\leq \varepsilon$ for $x\in U$. Then $$|\omega'(x_0)-\omega'(x)| = |\omega'(x)| \leq f(x)\leq \varepsilon$$ for $x\in U\cap \{f+g > 0\}$ and $|\omega'(x_0)-\omega'(x)| = 0$ for $x\in U\cap \{f+g = 0\}$. Thus $$\omega'[U]\subseteq \{a\in\mathbb{R}^n : |\omega'(x_0)-a|\leq \varepsilon\}.$$ So $\omega'$ is continuous at $x_0$.
If $f(x_0)\neq 0$ then $x_0\in \{f+g > 0\}$, but we know that $\{f+g > 0\}$ is open and the restriction of $\omega'$ to this set is continuous, so $\omega'$ is continuous at $x_0$.
The above argument shows that $\omega'$ is continuous at each $x_0\in X$, thus continuous.