Here I built a little approximation of the door placement logic to test edge locations, which let me filter my navmesh edge points.
This process was going well for the most part, but Unity's navmesh system couldn't handle large vertical drops well so I moved on to importing the offical navmesh.