Suppose, for the sake of contradiction, that $M^\perp \cap \text{Int}\,P = \emptyset$. Then by the first geometric form of Hahn-Banach, there exists $\beta \in \mathbb{R}^n$ such that $\beta \cdot x < \beta \cdot y$ for every $x \in M^\perp$ and every $y \in \text{Int}\,P$. Since $M^\perp$ is a linear space and $\beta \cdot M^\perp$ is bounded, it follows that $\beta \cdot M^\perp = 0$. Moreover, since $0 < \beta \cdot y$ for all $y \in \text{Int}\,P$, we have $\beta \in P$. Therefore, $0 \neq \beta \in M^{\perp\perp} = M$, which is a contradiction.
Therefore, let $v \in M^\perp \cap \text{Int}\,P$, and let $H = \{v\}^\perp$. Then $M \subseteq H$ and $P \cap H = \{0\}$, since for any $0 \neq x \in P$ and $v \in \text{Int}\,P$, we have $x \cdot v > 0$.
Update. For reference, here is the statement in Brezis of the first geometric form of Hahn-Banach.
Theorem 1 (Brezis). Let $A \subset E$ and $B \subset E$ be two nonempty convex subsets such that $A \cap B = \emptyset$. Assume that one of them is open. Then there exists a closed hyperplane that separates $A$ and $B$.