Preheat the grill to medium-high.
Melt the butter over medium-high heat in a large skillet. Add the onions and rosemary and cook until the onions are slightly translucent, about 2 minutes. Stir in the mushrooms and cook, stirring, until the mushrooms are soft and most of the juices have evaporated, 4 to 5 minutes. Pour in the wine and simmer until most of the liquid has evaporated, about 2 minutes. Season with 1/4 teaspoon each salt and pepper.
Cut a deep pocket horizontally into each steak. Sprinkle the steaks with salt and pepper. Stuff each pocket with about 1 1/2 tablespoons of the mushroom mixture, reserving the remaining mushroom mixture for serving. Skewer with toothpicks to close. Brush the steaks with olive oil.
Place the steaks in a grill basket (this way any filling that falls out during cooking won't fall into the fire). Transfer the basket to the grill. Close the cover and cook to desired doneness, 5 to 6 minutes per side for medium-rare. Let the steaks rest for 5 minutes on a platter or cutting board
Serve the steaks with the remaining mushroom mixture and the Bearnaise Sauce.
Combine the wine, half the tarragon, the vinegar, garlic, shallots and some salt and pepper in a saute pan over medium-low heat. Cook until reduced by half. Transfer to a medium metal bowl.
Start to whisk the wine mixture in the bowl while adding the butter in increments. (Do not stop whisking throughout this whole process.) Temper the eggs so they do not scramble and add them to the bowl. The sauce will look glossy and thick. Whisk in the lemon juice, if using. Taste for seasoning.