$\newcommand{\veps}{\varepsilon}$For every $x\in M$ let $\veps_x>0$ be such that $B(x,\veps_x)$ admits a compact closure. Since the following family is an open cover of $M$: $$\mathcal{U}:=\{B(x,\veps_x)~:~x\in M\},$$we can find a sequence $\{x_i\}_{i=1}^{\infty}$ such that $M=\bigcup_{i=1}^{\infty}B(x_i,\veps_{x_i}).$ Now let $\mathcal{B}$ denote the countable set of all finite unions of the sets $\{\overline{B(x_i,\veps_{x_i})}\}_{i\in\mathbb{N}}$; this family only consists of compact sets. The important thing to note is that every compact set is the subset of some element in $\mathcal{B}$.
Now for every $n\in\mathbb{N}$ let $\mathcal{U}_n$ be a countable open cover of $M$ by precompact balls with diameter bounded by $1/n$. Now for every $B\in\mathcal{B}$ and $n\in\mathbb{N}$ let $\mathcal{F}_{B,n}\subseteq\mathcal{U}_n$ denote a fixed finite subcover of $B$. Now consider a partition of unity, $\{\rho_i^{B,n}\}$, subordinated to $\mathcal{F}_{B,n}$. Now consider the sets $$\mathcal{C}_{B,n}:=\left\{\sum a_i\rho_i^{B,n}~:~a_i\in\mathbb{Q}\right\},$$and define $\mathcal{C}:=\bigcup_{B\in\mathcal{B}}\bigcup_{n\in\mathbb{N}}\mathcal{C}_{B,n}$. Note that $\mathcal{C}$ is countable, and every element is in $C_0(M)$.
Try showing this set is dense in $C_0(M)$. I hope this helps you get started in the right direction. If you need any more details regarding this last step, let me know and I will fill them in.