Offset Curve on Surface Command Help

I made a thread going into the overall problem I was having in regards to this program, but asking a specific question about it would probably be more helpful.

I am trying to offset a curve that is projected on a surface using the OffsetOnSurface grasshopper command. The outside perimeter curve was acquired from slicing a propeller blade in a nonplanar fashion, and I basically want to create an interior perimeter polyline/curve within the outside perimeter from the sliced component.

I would like to keep what is reasonably inside the outside perimeter curve (between the two blue dots) and discards the rest. However I am having a hard time figuring out how to do that automatically. I tried shattering the interior offset curve and keeping the longest pieces of it, but in this case the longest pieces of it are the ones outside the perimeter curve, creating weird and unusable geometry, and I don’t have any other ideas on how to automatically keep the correct/desired geometry.

Could anyone help me out with this?
See attached files. (37.1 KB)
propeller_fixed.3dm (4.8 MB)