I read that the cross product can't be generalized to $\mathbb R^n$. Then I found that in $n=7$ there is a Cross product: https://en.wikipedia.org/wiki/Seven-dimensional_cross_product
Why is it not possible to define a cross product for other dimensions $ \ge 4$?
The issue is the problem of choice.
Given two linearly independent vectors in $\mathbb R^3$, the dimension of the space perpendicular on both is $1$. This means that up to scalar multiplication, you know the perpendicular direction.
The only issue is is choosing the one of the opposing directions and magnitude, and there is a simple way of doing this, the known way, which in some sense comes out in a natural way from the Cramer's rule. Moreover, this choice works nicely in the case of linearly dependent vectors.
In higher dimensions the problem becomes much more complicated since the perpendicular space on two vectors has higher dimension. Then, if one tries to define the cross product, one has to chose one of infinitely many directions in a consistent way.
Also, $\mathbb R^3$ can be identified in a "natural" way with a subspace of $\mathbb R^4$ in many ways, for example $\mathbb R^3 \times \{0\}$ or $\{0\} \times \mathbb R^3$. But no matter how you define the cross product in $\mathbb R^4$, it won't be consistent with one of these identifications...