Some ideas to get started.
First get rid of the small fiddlybits that are less than 50 acres regardless of whether they are solely within or traverse a boundary.
Second, don't you have a geometry constraint? Thickness, width/length perimeter/area ratio? Some of those polygons are pretty irregular in shape.
Third, do you need all the candidates? or the biggest one that is mostly inside one hexagon? possibly, split the green polygons by a polyline version of the hexagons and redo the area calculation to dump even more.
Fourth, from step 3, you could summarize the green area per hexagon and keep the most green
That's all the ideas for now