1. Place potatoes in a large saucepan and cover with salted water. Bring to a boil over medium-high heat. Reduce heat to medium and cook until potatoes are fork-tender, about 7 minutes. Drain and pat dry. Fill saucepan 3/4 full with water. Add 1 Tbsp. vinegar; bring to a simmer over high heat. Reduce heat to medium to maintain simmer.
2. Cook bacon in a 12-inch nonstick skillet over medium heat until crisp, turning as needed, about 10 minutes total. Transfer to a large paper towel-lined plate. When cool enough to handle, roughly crumble.
3. Add 1 Tbsp. oil to skillet; increase heat to medium-high. Spread potatoes and onion in a single layer and cook, undisturbed, until golden on one side, about 3 minutes. Toss and cook 3 minutes longer. Add garlic; sauté 1 minute. Season generously with salt and pepper; transfer to plate with bacon. Add remaining 2 tsp. oil and Brussels sprouts to skillet; sauté 2 minutes. Add broth; cover and cook until sprouts are just tender, about 5 minutes longer. Stir in remaining 1 Tbsp. vinegar. Return potato mixture and bacon to skillet; season with salt and pepper.
4. Crack each egg into a small cup. Gently tip each egg into simmering water in saucepan. Turn off heat, cover pan and let sit until eggs are just set, about 3 minutes (4 to 5 for firmer yolks). Using a slotted spoon, transfer eggs to a paper towel-lined plate.
5. Divide hash among 4 plates; top each serving with an egg. Sprinkle with additional salt and pepper.