Yes, such an extension does exist.

Let $\{ e_i \}_{i \in I}$ be a basis of $\mathbb{R}$ over $\mathbb{Q}$. Pick any finite subset $e_1, ..., e_k$ of the $e_i$s, and look at the restriction of $f$ to $P' = (\mathbb{Q}e_1 \oplus \cdots \oplus \mathbb{Q}e_k) \cap P$. It's easy to see that there is a unique extension of $f$ to a polynomial $\mathbb{Q}e_1 \oplus \cdots \oplus \mathbb{Q}e_k \rightarrow \mathbb{R}$ of degree at most $n$, where by polynomial, I mean a polynomial in the coefficients on $e_1, ..., e_k$ (for uniqueness, you can use that $P'$ is Zariski-dense in $\mathbb{Q}e_1 \oplus \cdots \oplus \mathbb{Q}e_k$).

By the uniqueness of this polynomial, we see that if instead of choosing $e_1, ..., e_k$ we had chosen some subset of them, we would still get the same function on the vector space spanned by the subset. Thus, the following definition for $F$ is well-defined: for any $x \in \mathbb{R}$, write $x$ as a linear combination of finitely many $e_i$s $e_1, ..., e_k$, and evaluate the polynomial extension of $f$ to $\mathbb{Q}e_1 \oplus \cdots \oplus \mathbb{Q}e_k$ at $x$.

To see that this satisfies $\Delta^{n+1}_hF(x) = 0$ for any $x,h$, choose a finite set $e_1, ..., e_k$ with which we can represent both $x$ and $h$, and then note that on the restriction to $\mathbb{Q}e_1 \oplus \cdots \oplus \mathbb{Q}e_k$, $F$ is equal to a polynomial of degree at most $n$, and thus $\Delta^{n+1}_hF(x) = 0$.