Combine half the garlic and half the olive oil in a small bowl and set aside.
Caramelize the onions: heat one tablespoon oil in a medium-sized frying pan over medium heat. Add onions, stir and cook until onions begin to brown. Reduce heat to medium-low and continue to cook onions slowly, stirring occasionally, until soft and uniformly brown, about 40 minutes. If the onions start to stick and burn, add a splash of water or white wine. Add 1 tablespoon of garlic near the end. Once cooked, transfer onions to a small bowl.
While onions are cooking, prepare the bacon, mushrooms and peppers. Place the bacon in a cold cast-iron frying pan and turn the heat to medium. Cook until crisp but still juicy. Remove from the pan and slice into bite-sized pieces when cool. Transfer to a small bowl
Add mushrooms to the same pan. Cook over medium heat until just beginning to brown, adding more oil as necessary. Toss with a teaspoon of garlic and a pinch of salt, remove from the pan and transfer to a small bowl.
Add peppers to the same pan. Cook over medium heat, adding oil as necessary, until softened and beginning to brown. Turn heat to high and add balsamic vinegar, all at once, and toss to coat. Remove from heat immediately and toss with a teaspoon of garlic. Transfer to a small bowl.