Hi, 
There is a build-in function PolynomialQ[], you can use it together with Select[] to filter a given list, say:
polys = {
   x/(y + 1) + x^2/(y + 2),
   x y^-30 + x/(y^2 - 2),
   x^10 y^x + x^5 y^8,
   x^10 y^2 + x^5 y^8
   };
PolynomialQ[#, {x, y}] & /@  polys
Select[polys, PolynomialQ[#, {x, y}] &]
Also, note that "x^10 y^x + x^5 y^8" is not a polynomial in (x,y) variables, since it involves y^x.
If you just need to remove expressions with denominators, then from:
x/(y^2 - 2) // FullForm
it can be seen that they match the pattern of the form a__ + b__ Power[c__, -1]:
x^10 y^x + x^5 y^8 /. a__ + b__ Power[c__, -1] -> 1
x/(y + 1) + x^2/(y + 2)  /. a__ + b__ Power[c__, -1] -> 1
x y^-30 + x/(y^2 - 2) /. a__ + b__ Power[c__, -1] -> 1
DeleteCases[polys /.  a__ + b__ Power[c__, -1] -> 1 , _Integer] 
I.M.