I blame the money. Playing for England is a status symbol, players don't see it in the way they used to.
Also worth saying that England success at major tournaments is very limited. 1966 aside, only 1990 stands out as an achievement. 1996 Euros was good, but a semi in your home tournament is...