It's because it is a middle/upper class sport at the moment. It isn't a perception, as you just said it is reality. Even where I am from in West Mids a pretty deprived area, in the top division the teams are dramatically disproportionately in salubrious bits of areas.
https://bdpcl.play-cricket.com/website/division/109031
In Birmingham Prem the only team from Birmingham proper is Moseley (which is a very hipster/gentrified area and outside of the proper footballer bits the most middle class) the other Birminghamish team is Solihull which is the richest area close to the city and where footballers from lots of the midlands clubs live.
Interactive maps and analytic dashboards of England house prices combined with population and crime. The latest and most reliable UK government public data.
a.plumplot.co.uk
Check the house price data for West Mids,
4 teams from Worcestershire; population around
~600k and higher house prices/more middle class for median population
3 teams from Warwickshire; population ~
550k but 0 from Coventry which represents well over half of the counties pop and is very impoverished and diverse.
1 team from Shropshire pop
300k , one of the wealthiest towns in the county (possibly the country overall).
4 teams from West Mids conurbation (including Halesowen - which is me being very generous by not including them in Worcestershire) population
2.6 million
Let's also not make any bones about it, West Mids is one of the most diverse parts of the country yet most of those teams are in much more predominantly white areas vs than overall demo of the area.
Ombersley a sleeply little village outside Droitwich has a team in Birmingham Prem. Population
599 per 2021 census. Chelmsley Wood, the largest council estate (public housing) in Birmingham hasn't even got a cricket club. Population
13k.