With[{g =
Graph@Flatten@
Map[UndirectedEdge @@@ Partition[#, 2, 1, 1] &,
polygons /. Polygon -> List, {2}]},
Polygon[#[[All, 1]]] & /@
FindCycle[
VertexDelete[g,
v_ /; VertexDegree[g, v] > 2 &&
Min[VertexDegree[g, #] & /@ AdjacencyList[g, v]] >
2], \[Infinity], All]] // Graphics