First of all, I don't see how a reliable feature selection among > 1e6 features can take place on the basis of only 200 cases.
Just to be sure we're talking about the same thing: modeling 200 cases with 1500 features did not lead to sufficient degrees of freedom in your model!?
Feature selection is a really difficult task, which usually leads to massive multiple comparison situations. You may get away with so few cases in extremely benign regression problems, but I don't see any chance for exhaustive search feature selection for classification (not even with proper scoring rules). But I'd be happy to learn the opposite :-)
Now about the more programming-related part of the question:
If you don't care whether the square terms are included or not, maybe your modeling is available in a kernel version. In that case, you could use a polynomial kernel of degree 2.
(This is what IMHO keeps the question appropriate for cross validated)