Peel and finely dice the shallots and the 5 garlic cloves. Halve the garlic bulb crosswise. Rinse the lamb shanks with cold water, pat dry, removing any excess fat if necessary, and season with salt and pepper. Heat the olive oil in a roasting pan over medium-high heat and brown the lamb shanks on all sides, about 10 minutes total.
Add the diced shallots, garlic cloves, and halved garlic bulb to the pan. Fry for 2 minutes, then deglaze with the white wine, scraping up any browned bits from the bottom.
Add the bay leaves, juniper berries, and rosemary sprigs. Pour in the lamb stock. Place in a preheated oven at 180 °C (356 °F) on the second shelf from the bottom and braise for 2.5 hours, basting the lamb shanks with the braising liquid and turning them every 30 minutes.
30 minutes before the cooking time ends, add the 4 diced tomatoes to the pan and continue braising.
Serve the braised lamb shanks with spaetzle and salad.