Assume $a = -b$, and to introduce some notation, fix a positive integer $m$, let $P_m$ denote the subsapce of polynomial functions in $C[a,b]$ of degree at most $m$, and for any $f \in C[a,b]$, let $f_m$ denote the element of $P_m$ that is closest to $f$ in the supremum norm. (By a bunch of complicated theorems, you know such an element exists, and that it is unique. This is the key to at least one way of doing the exercise. In other words, you can leverage the known uniqueness of the best approximation into a fairly simple proof of the result.)
Here is a strategy to the problem.
If $f$ is even, define $p \in P_m$ by declaring for all $x \in [a,b]$ that $p(x) = (1/2)(f_m(x) + f_m(-x))$. Verify that $p$ thus defined is indeed an element of $P_m$ and that $p$ is even. Prove that $\|f - p\| \leq \|f - f_m\|$. It follows from the uniqueness property mentioned above that $f_m = p$.
If $f$ is odd, follow the same program, but with $p$ defined by $p(x) = (1/2)(f_m(x) - f_m(-x))$.
For a little more guidance on (1).
Why $p$ is in $P_m$. Because $f_m$ is in $P_m$ by definition and it is generally true that whenever $g(x)$ is a polynomial, the function $g(-x)$ is a polynomial of the same degree, it follows that $f_m(x)$ and $f_m(-x)$ are both polynomials of degree at most $m$, and hence (because $P_m$ is a subspace of $C[a,b]$) that $p$ thus defined is a polynomial of degree at most $m$.
Why $p$ is even. The fact that $p$ is even is just a simple computation from the definition. (It doesn't depend in any way on $f_m$ being a polynomial. If $g$ is any element of $C[a,b]$, the function $(1/2)(g(x) + g(-x))$ is even.)
Why $\|f - p\| \leq \|f - f_m\|$. This can be seen from a short computation.
Fix $t \in [a,b]$. Note that
\begin{align}
|f(t) - p(t)| & = |f(t) - (1/2)(f_m(t) + f_m(-t))| \\
& = (1/2) |2f(t) - f_m(t) - f_m(-t)| \\
& \leq (1/2) (|f(t) - f_m(t)| + |f(t) - f_m(-t)|) \\
& = (1/2) (|f(t) - f_m(t)| + |f(-t) - f_m(-t)|),
\end{align}
where in the last line we used the fact that $f$ is even to replace $f(t)$ with $f(-t)$. Now note that by definition of the norm we have $|f(t) - f_m(t)| \leq \|f - f_m\|$, and also that $|f(-t) - f_m(-t)| \leq \|f - f_m\|$ (this latter inference is where we use the fact that $a = -b$, because we need to know that $-t$ is also in $[a,b]$ to deduce that $|f(-t) - f_m(-t)| \leq \sup_{s \in [a,b]} |f(s) - f_m(s)| = \|f - f_m\|$). We can therefore deduce from the chain of above inequalities and equalities that $|f(t) - p(t)| \leq \|f - f_m\|$. Since this holds for all $t \in [a,b]$, we deduce that $\|f - p\| \leq \|f - f_m\|$ as desired.
We can generalize this exercise a little bit. Suppose $V$ is a normed vector space and $W$ a subspace of $V$. Suppose further that $T: V \to V$ is a linear map with the property that (1) $T \circ T$ is the identity, (2) $T$ preserves the norm (i.e. for all $v \in V$ one has $\|T(v)\| = \|v\|$), and (3) $W$ is invariant under $T$ (i.e. for all $w \in W$, $T(w) \in W$). Suppose finally that $v \in V$ is a fixed element of $V$ and that $T(v) = v$.
Theorem: under these hypotheses, if there is a unique element $w$ of $W$ such that $\|v - w\| = \inf_{z \in W} \|v - z\|$, then one has $T(w) = w$.
Proof: let $w' = (1/2)(w + T(w))$. Our hypotheses imply that $w' \in W$ and that $T(w') = w'$. And clearly $\|v - w'\| = (1/2) \|v - w + v - T(w)\| \leq (1/2) (\|v - w\| + \|v - T(w)\|)$. But since $T(v) = v$ and $T$ is linear and norm-preserving, we know that $\|v - T(w)\| = \|T(v) - T(w)\| = \|T(v - w)\| = \|v - w\|$, and it follows that $\|v - w'\| \leq \|v - w\|$ and hence (from uniqueness) that $w = w'$. End of proof.
We recover the result above by taking $V = C[-b,b]$, $W = P_m$, and $T$ the map $f(x) \mapsto f(-x)$ (in the even case) or $f(x) \mapsto -f(-x)$ (in the odd case).