Heat a large cast-iron skillet over medium heat. Add the bacon strips and cook until crispy, about 5-7 minutes. Transfer the bacon to a paper towel-lined plate, reserving the bacon fat in the skillet.
Increase heat to medium-high. Place Brussels sprouts cut-side down in a single layer in the hot bacon fat. Let them cook undisturbed for 3-4 minutes until deeply golden on the bottom.
Add the sliced garlic to the pan and stir to prevent burning. Cook for 30 seconds until fragrant.
Pour in the chicken broth and reduce heat to medium. Cover the skillet and allow the sprouts to steam and braise for 4-5 minutes, until they're tender when pierced with a fork.
Remove the lid and allow any remaining liquid to evaporate, about 2 minutes.
Drizzle the balsamic vinegar over the Brussels sprouts and stir to coat. Cook for 1-2 minutes until the vinegar begins to reduce and gets slightly syrupy.
Add the butter, salt, pepper, and red pepper flakes (if using). Stir until butter is melted and everything is well coated.
Return the crispy bacon to the skillet, toss to combine, and serve immediately while hot.