(a) Let $x\in H\cap H^g$, where $g=hn$, $h\in H$, $n\in N$, $n\neq 1$. Then there exists $y\in H$ such that $x=g^{-1}yg = n^{-1}(h^{-1}yh)n$. Since $h^{-1}yh\in H$, it suffices to consider the case of $g\in N$. So we set $g=n$.
(The intuition is that we want to go to some expression like $x^{-1}nx = n$, because this will force $x=1$ given our assumption. The rest of the computations are done to try to get that.)
Thus, we want to show that if $n\in N$, then $H\cap H^n=\{1\}$. If $ x= n^{-1}yn$, then $nx = yn$, so $x^{-1}nx = (x^{-1}y)n$. However, since $N$ is normal, $x^{-1}nx\in N$, so $x^{-1}y\in N$. Since $x,y\in H$, then $x^{-1}y=1$, hence $x=y$. Thus, $x=n^{-1}xn$.
But this in turn means $x^{-1}nx = n$. Since no nonidentity element of $H$ fixes any nonidentity element of $N$, and $n\neq 1$, then $x=1$. Thus, $H\cap H^n=\{1\}$, and by the argument above we conclude that $H\cap H^g=\{1\}$ for any $g\in G-H$, as claimed.
(b) Added: The fact that this is restricted to finite groups should suggest that you are looking for a counting argument: that is, that you want to show that the number of elements on the right hand side is equal to the number of elements on the left hand side, rather than trying to prove set equality by double inclusion.
Note that H^g=H^{g'} if and only if gg'^{-1}\in N_G(H); by (a), $N_G(H)=H$, so we can take the union over a set of coset representatives of $H$ in $G$; $N$ works nicely as such a set. Again using (a) we have then that: $\begin{align*} \left| N \cup \bigcup_{g\in G}H^g\right| &= \left| N \cup \bigcup_{n\in N}H^n\right|\\ &= |N| + |N|(|H|-1)\\ &= |N| + |N||H|-|N|\\ &= |N||H|\\ &=|G|, \end{align*}$ and we are done.