Hi Phil,
this is a rather large topic which is not covered easily with a post reply but I'll try to do my best. First of, what you are trying to do is possible but i can be done in different ways and those ways depend on your tech stack, infrastructure and of course, your use case and the amount of money to invest.
Tech Stack Mapbox GL JS + Database (or Geojson) + Mapbox Styles + PBF Tile Server:
Mapbox styles allow styling the data directly on the client. This means that you can do styling in realtime without having to preprocess the underlying data (assuming that the dataset contains all properties that you require). With a specific filter in the mapbox map style, it's possible to filter airspaces depending on theier upper or lower ceiling. To make those filter rules easier or even possible, it may require tweaking of the underyling data to add properties that help in styling the map. But, and that is the main difference and pro of this approach, it does not require you to maintain multiple sets of data or layers like you would have with a traditional TMS/WMS approach.
A con of this approach is that you need a MVT/PBF server that spits out the binary tiles. You can use mapbox for free but depending on your usage, it will cost money. There are other oss alternatives but mpst have trade-offs compared to mapbox (especially the mapbox map styler capabilities are awesome).
Tech Stack WMS/TMS server:
The traditional way is using a WMS/TMS like Geoserver fronted with openlayers or leafelt. This approach is reliable and battle proven and easy to setup but it lacks the styling capabilities and flexibility of mapbox gl. It will also be required to at least preprender some png for some layers to take the load of the tile server. There are a lot of oss projects that help you setup such a stack like UMN mapserver, Georserver, mapproxy and openlayers or leaflet.
Ultimately, what you use in the end depends what suits you best,. For the mapserver appraoch, I would do the following to achieve your goal:
1.) download the data
2.) Tweak the data to have easier harmonized ceiling values. This helps with styling in mapbox.
3.) grad the current mapbox style via browser developer tools from the current openaip map. The one in the repo is outdated - but of course can be used as a starting point.
4.) get the iconmap via browser developer tools from the current openaip map to have the used icons.
5.) adjust the style according to your needs to either show or hide the airspaces in question. this can be done on the client with just changing an "upper ceiling slider" for example.
6.) choose a server that is used to host your data and creates the binary tiles. Mapbox offers a pretty decent free tier that can be used for most personal projects. This also allows you to upload the data in geojson, create the layers and style the data directly in the browser with a very good interface.
Hope that helps,
Stephan