In fact, this is virtually the same question as this one, even though this question considers only the parity of the number of even parts while that question does so for the parity of all parts (and throws in a factor $(-1)^n$). The connection is due to the fact that for any partition of $n$, the parity of its number of odd parts is necessarily the same as the parity of $n$ and therefore unalterable; therefore changing the parity of the number of parts always also changes the parity of the number of even parts. As a consequence one can prove this using the same bijection to cancel out non-contributing partitions. For your convenience I've edited my answer so as to apply directly to the current question, without needing translation.
Firstly, the Young diagram of a self-conjugate partition can be decomposed it into hooks with a diagonal square as corner, and can be reconstructed from the sequence of the (distinct odd) sizes of the hooks. As a consequence $k(n)$ equals the number of partitions of $n$ into distinct odd parts (and the generating series for the $k(n)$ is indeed $\prod_{i\geq 1}(1+x^{2i-1})$ as you guessed).
To equate this number to $e(n)-o(n)$, consider the following involution to match any partition of $n$ in the subset $S=p(n)\setminus p_{DO}(n)$ of partitions that are not into distinct odd parts, with another element of $S$ with the opposite parity of its number of its even parts. For $\lambda\in S$, test the odd numbers $m=1,3,5,\ldots$ in order, considering the set of parts of $\lambda$ of the form $2^km$ with $k\in\mathbf N$. If the set is either empty or consists of a single part $m$, move on to the next odd number. Since $\lambda\in S$, there is some $m$ that is not skipped; stop at the smallest such $m$. Now take the maximal $k$ such that $\lambda$ has a part of size $2^km$. If this part is unique, then $k\neq0$ by the choice of $m$; break the part into two parts of size $2^{k-1}m$. Otherwise $\lambda$ has at least two such parts; glue them together to form a part of size $2^{k+1}m$. One readily checks that the partition $\mu$ so produced is in $S$, that this procedure is an involution on $S$, and that $\lambda,\mu$ always have opposite parities for the number of their even parts (any pair of equal-size parts does not contribute to this parity, regardless of their size).
So the elements of $S$ together produce a null contribution to $e(n)-o(n)$, while each element of $p_{DO}(n)$ is in $e(n)$ (as it has no even parts) and therefore contributes $1$ to this difference.