Selling off all the schools' playing fields certainly hasn't helped cricket in state schools, no. The vast majority of English players now come from public (fee paying) schools or from cricket clubs. If they come through the English system at all, obvz...
The sad fact is we aren't overburden with world class sporting talent, but we do produce them in other sports with greater regularity than cricket; for instance our world cup winning union side had three nailed-on AT greats in Johnson, Hill & Robinson and others like Wilkinson & Dallaglio who could have cases made for them.
As to the why? Several reasons, the weather probably doesn't help, nor the sedentary lifestyle or lack of investment in the grass roots but as a nation we are utterly sports-obsessed (EPL most watched sports league in any sport in the world and yesterday 70k people paid money to watch England play Samoa, which, with all due respect, isn't a blue-chip fixture) so it is something of a mystery.