Reduce not yielding accurate results?

I am trying to use Reduce to determine the range of values of parameter g for which NCritical[g] > N1[g].

a = 0.03; c = 0.5; b = d = 1; K = HMax = 1000;   NCritical[g_] := (   b^2 (-1 + c g)^2 Sqrt[(b - b c g)/(1 + c - c g)] K^2)/(   d^2 (-1 + c (-1 + g))^2);  Equilibria1[g_] := Module[{h, x, y},        Simplify[     Normal[Solve[       y*g*(1 - c*g)*(1 - h/HMax)*b - a*h == 0 &&         y*(1 - c*g)*h/HMax*b + y*g*(1 - c*g)*(1 - h/HMax)*b -           y*d*(x + y)/K == 0 && x*h/HMax*b - x*d*(x + y)/K == 0, {h, y,         x}, PositiveReals]]]];  H1[g_] := Equilibria1[g][[All, 1]][[1]][[2]];  Y1[g_] := Equilibria1[g][[All, 2]][[1]][[2]];  X1[g_] := Equilibria1[g][[All, 3]][[1]][[2]];  Range1 = Once[   N[Reduce[Y1[g] > NCritical[g] && 0 <= g <= 1, PositiveReals]]] 

The code above gives the following range:

0. < g < 0.000165352 

However, we can see this is wrong by testing whether the following statement is true:

 g=1;   Y1[g]>(b^2 (-1 + c g)^2 Sqrt[(b - b c g)/(  1 + c - c g)] K^2)/(d^2 (-1 + c (-1 + g))^2) 

This gives an answer of True.

Is there any way around this problem?