One approach is to create polygons from the cliff areas eg Raster Calculator with Slope > 60, then Polygonize.
Then, largely follow the steps outlined in this answer to split the polygons into roughly equal areas. This allows you to break up long/large cliff areas into smaller chunks.
Because cliff areas tend to be skinny, I found the centroids often lay outside the original polygons. So you can add a step after creating the centroids to use the Snap Geometries to Layer tool (snap the centroids back to the original random points). This will get you a point layer that is inside the cliff polygons - though the process will probably still work acceptably without this step.
Finally, use Zonal Statistics to calculate the range (top-bottom) for each area.
Here's an example with maximum cliff heights for each area in metres.

If you are happy to just have one height for long clifflines, you can skip all of the middle steps, and go straight from Polygonize to Zonal Statistics.