I think Penn works just fine, but this is coming from a biased Pennsylvanian. I do want to suggest the name Myron ("MY-run"), which has the same feel as Marlon but would still allow you to use Margot on a future daughter. Good luck!

I like Penn but it just isn't as great as Marlon or Bugsy.
Personally I prefer Marlon over Margot but I kind of like that they are so close. I get that you love Margot and might want to keep it for a future girl should this LO be a boy but Margot could still be a mn and I actually find it quite charming that the names you choose sound so similar, it's like you almost know whose growing inside of you even though you haven't "formally" meet.

Suggestions:
Have you considered using the designated mn as a fn? I can't remember what it was but I remember thinking it was a cool combo with Marlon.
Otherwise: Tucker, Axel, Arno, Scout, Knox, Jesse (you;d have Billy the Kid and JesseJames... )..... I don't know Bugsy is hard to follow. Too bad your hubby didn't fall in love with two boys names as a kid.