Heat 1 tablespoon unsalted butter in a large skillet over medium heat. Add the diced ham steak and cook for approximately 4–6 minutes, stirring occasionally, until golden and lightly crispy around the edges. Remove from the skillet and set aside.
In a shallow baking dish, whisk together the eggs, heavy cream, granulated sugar, vanilla extract, and a pinch of kosher salt until smooth and well combined.
Arrange 5 slices of brioche bread on a work surface. Divide the shredded Gruyère cheese and crispy diced ham evenly among the slices. Top with the remaining 5 slices of brioche and gently press to secure. If desired, use a sandwich cutter to create sealed pockets.
Carefully dip each assembled sandwich into the egg mixture, coating both sides. Allow any excess custard to drip off before transferring to the skillet. Avoid soaking the brioche for too long, as it can become overly soft.
Melt 1 tablespoon unsalted butter in a large nonstick skillet over medium-low heat.
Add the sandwiches in batches, leaving enough room to flip them. Cook for approximately 3–4 minutes per side, until the brioche is golden brown, the egg coating is cooked through, and the Gruyère begins to melt. Adjust the heat as needed to prevent the bread from browning too quickly. Add additional butter between batches if necessary.
Check for doneness. The egg-coated bread should be fully cooked, with no wet custard remaining. Aim for 160°F in the egg-coated portions. If the bread is golden but the cheese hasn't melted, reduce the heat and briefly cover the skillet.
Transfer the cooked sandwiches to a cutting board and let them rest briefly before slicing in half, if desired.
Dust the warm Monte Cristo sandwiches lightly with powdered sugar and serve immediately with strawberry jam for dipping.