\[ \boxed { \left ( f \left ( x \right ) \right ) ^{2}{\frac {{\rm d}^{2}}{{\rm d}{x}^{2}}}y \left ( x \right ) +f \left ( x \right ) \left ( {\frac {\rm d}{{\rm d}x}}f \left ( x \right ) \right ) {\frac {\rm d}{{\rm d}x}}y \left ( x \right ) -h \left ( y \left ( x \right ) ,f \left ( x \right ) {\frac {\rm d}{{\rm d}x}}y \left ( x \right ) \right ) =0} \]
Mathematica: cpu = 0.952121 (sec), leaf count = 39 \[ \text {DSolve}\left [-h\left (y(x),f(x) y'(x)\right )+f(x) f'(x) y'(x)+f(x)^2 y''(x)=0,y(x),x\right ] \]
Maple: cpu = 0.218 (sec), leaf count = 68 \[ \left \{ y \left ( x \right ) ={\it ODESolStruc} \left ( {\it \_a},[ \left \{ {\frac {\rm d}{{\rm d}{\it \_a}}}{\it \_b} \left ( {\it \_a} \right ) =-h \left ( {\it \_a}, \left ( {\it \_b} \left ( {\it \_a} \right ) \right ) ^{-1} \right ) \left ( {\it \_b} \left ( {\it \_a} \right ) \right ) ^{3} \right \} , \left \{ {\it \_a}=y \left ( x \right ) ,{\it \_b} \left ( {\it \_a} \right ) ={\frac {1}{f \left ( x \right ) {\frac {\rm d}{{\rm d}x}}y \left ( x \right ) }} \right \} , \left \{ x={\it RootOf} \left ( \int \!{\it \_b} \left ( {\it \_a} \right ) \,{\rm d}{\it \_a}+{\it \_C1}-\int ^{{\it \_Z}}\! \left ( f \left ( {\it \_f} \right ) \right ) ^{-1}{d{\it \_f}} \right ) ,y \left ( x \right ) ={\it \_a} \right \} ] \right ) \right \} \]