Bring a large skillet of salted water to a boil. Add the asparagus and cook until crisp-tender, 2 minutes. Drain and transfer to a plate. Wipe out the skillet.
Add the oil and shallots to the skillet, season with salt and pepper and cook over moderate heat until softened, 4 minutes. Transfer the shallots to a plate. Add the tomatoes to the skillet, season with salt and pepper and cook over moderately high heat until lightly browned on one side, 2 minutes; transfer to the plate with the shallots.
Preheat the broiler. Arrange the bread on a baking sheet; toast in the broiler 3 inches from the heat, turning once, 2 minutes.
Spread the toasts with the tapenade and top with the shallots, fontina and mozzarella. Broil the tartines 3 inches from the heat for 1 minute, until the cheese has melted. Top the tartines with the asparagus and drape with the Gruyère. Broil the tartines for 1 minute longer, until the Gruyère has melted. Top the tartines with the tomatoes and prosciutto, drizzle with the vinegar and serve.