Notice that you can apply Hahn-Banach to a functional defined on the trivial subspace $Y =\{0\}$ of $X$. There is exactly one such functional given by $f(0) = 0$. We must have $p(0) = 0$ by positive homogeneity so $f(x) \leq p(x)$ for all $x \in Y$.
Then Hahn-Banach yields an extension of $f$ to a functional on all of $X$ satisfying $f(x) \leq p(x)$ for all $x \in X$. Hence $f(-x) \leq p(-x)$ for all $x$, which implies $f(x) \geq -p(-x)$ for all $x$.
The statement you want to prove is the classic first version of the Hahn-Banach Separation Theorem .
Usually one has available the Hahn-Banach Theorem, in the form
If $M\subset X$ is a subspace, $\varphi:M\to\mathbb R$ is linear, and $\mu$ is a real seminorm on $X$ (subadditive, $\mu(\lambda x)=\lambda\,\mu(x)$ for $\lambda\geq0$) with $|\varphi(x)|\leq\mu(x)$ for all $x\in M$, then there exists $\tilde\varphi:X\to\mathbb R$, linear, with $\tilde\varphi|_M=\varphi$ and $|\tilde\varphi(x)|\leq\mu(x)$ for all $x$.
Since the interior of a convex set is convex, we may assume that $E$ is open (as the inequality will hold for any limit point). Fix $e'\in E$, $f'\in F$; The condition $E\cap F=\varnothing$ guarantees $e'\ne f'$. Then the set $Z=E-F+f'-e'$ is convex, open and $0\in E-F+f'-e'$. If $\mu$ is its Minkowski Functional, the conditions on $Z$ (open convex neighbourhood of $0$) guarantee that
$$\tag1
Z=\{x\in X:\ \mu(x)<1\}.
$$
On the subspace $M=\mathbb R(f'-e')$, define $\varphi:M\to\mathbb R$ by $\varphi(\lambda(f'-e'))=\lambda$. Then $\varphi$ is linear. As $f'-e'\not\in Z$, we have $\mu(f'-e')\geq1$. So
$$
|\varphi(\lambda(f'-e'))|=|\lambda|\leq|\lambda|\,\mu(f'-e')=\mu(\lambda(f'-e')).
$$
That is, $|\varphi(x)|\leq\mu(x)$ for all $x\in M$. By the Hahn-Banach Theorem, there exists $\tilde\varphi:X\to\mathbb R$, linear, with $|\tilde\varphi(x)|\leq\mu(x)$ for all $x\in X$.
Now, for any $e\in E$, $f\in F$,
$$
\tilde\varphi(e)-\tilde\varphi(f)+1=\tilde\varphi(e-f+f'-e)<1
$$
by $(1)$. Thus
$$\tag2
\tilde\varphi(e)<\tilde\varphi(f),\qquad e\in E,\ f\in F.
$$
Let $c=\sup\{\tilde\varphi(e):\ e\in E\}$. Then $c\leq\tilde\varphi(f)$ for all $f\in F$. Using that $F$ is a subspace, we get $c\leq t\tilde\varphi(f)$ for all $t\in\mathbb R$. This forces $\tilde\varphi(f)=0$ for all $f\in F$. Thus
$$\tag3
\tilde\varphi(f)=0,\ \tilde\varphi(e)\leq0,\qquad f\in F,\ e\in E.
$$
Finally, limit points of $E$ are also limit points of $Z$, and so they satisfy $\mu(x)\leq1$ as the Minkowski Functional is continuous. So the argument above still works, just with $\leq$ instead of $<$.
Best Answer
The Hahh-Banach Theorem comes in two flavors: the "Extension Theorem", which you probably know, and the "Separation Theorem", which is what you need to use here, as mentioned in @Conifold's comment. They are equivalent but the proof of their equivalence needs an argument which is not entirely trivial.
If you insist in using the "Extension Theorem" to solve your problem then you must sort of mimick part of the aforementioned argument, which runs more or less like this:
Let $x_0$ be the center of your ball $B$, and $r$ its radius, so that $\Vert x_0\Vert \geq r$. Use the extension Theorem (or rather a well known Corollary) to find a linear functional $f$, with $\Vert f\Vert=1$, and $f(x_0)=\Vert x_0\Vert$. Then, for every $x\in B$, one has that $$f(x_0-x) \leq \Vert x_0-x\Vert<r,$$ whence $$ f(x)>f(x_0)-r = \Vert x_0\Vert - r \geq 0. $$