Preheat grill to medium-high heat, and in a small bowl mix together the olive oil, balsamic vinegar, and garlic. Season with salt and pepper.
Brush two slices of Italian bread with the dressing on the inside. On one side with the dressing side up, place the prosciutto, red onions, and tomatoes.
Place the mozzarella over the tomatoes and then top with the basil leaves. Place the second piece of Italian bread, dressing side down on top of the assembled sandwich.
Repeat with remaining ingredients.
Place on grill and cook until bread is golden brown and cheese has melted.