In a large skillet, heat 2 tbsp. butter and the oil over medium. Add the shallots and sugar; season. Cook, stirring occasionally, until the shallots are lightly browned, 8 to 10 minutes. Add the wine and vinegar; cook, stirring occasionally, until the liquid evaporates, 8 to 10 minutes. Let the shallot jam cool. Place a rimmed baking sheet in a 450° oven. Spread the remaining butter on both sides of the bread. Spread 1 tbsp. shallot jam on half the bread slices; top with the cheese and remaining bread slices. Place on another rimmed baking sheet. Place the heated baking sheet on top of the sandwiches. Weigh down with a large, heavy skillet; bake 5 minutes. Carefully lift the skillet and top baking sheet; flip the sandwiches. Replace the baking sheet and skillet; bake until the cheese melts and the bread is toasted, 5 to 7 minutes more. Remove the skillet and baking sheet. Let cool 5 minutes. Cut off the crusts, then cut each sandwich corner to corner into 4 triangles.