In a small bowl, whisk together the softened butter, Dijon mustard, honey, salt, and pepper until well combined and creamy. Fold in the finely sliced green onions, being careful not to overmix. Set the spread aside at room temperature so it remains spreadable. I like using room-temperature butter for this spread because it blends smoothly with the mustard without becoming greasy.
Preheat your oven to 375°F. Slice each croissant horizontally through the middle, being careful not to cut all the way through—keep them attached at one side like a hinge. Spread a generous layer of the butter mixture on both the top and bottom halves of each croissant. Layer 2-3 slices of ham on the bottom half, then top with just over 1 slice of Swiss cheese per croissant, folding it to fit. Close the croissant gently.
Arrange the assembled croissants seam-side down in a greased 9x13-inch baking dish (or similar size that fits them snugly). In a small bowl, whisk the egg white with 1 tablespoon of water until frothy. Brush this egg wash generously over the top of each croissant, then immediately sprinkle with poppy seeds while the egg white is still wet so they adhere properly. I find that whisking the egg white extra well creates a nice, even coating that helps the seeds stick beautifully.
Bake in the preheated 375°F oven for 15-18 minutes, until the croissants are golden brown and the cheese is melted (you should see it peeking through slightly). Remove from the oven and let rest for 5 minutes before serving—this allows the filling to set slightly and makes them easier to handle and eat.