Coat a large straight-sided saute pan with olive oil. Smash 2 of the whole garlic cloves with the heel of your hand and toss them into the pan with a pinch of crushed red pepper. Bring the pan to a medium-high heat. When the garlic is golden brown and very aromatic, remove it from the pan and discard it, it has fulfilled its garlic destiny.
Add the spinach to the pan, stir to coat the oil and season with salt. Cover the pan and cook for 2 to 3 minutes. Remove the lid from the pan and stir the spinach, it should be wilted. Taste and adjust the seasoning if needed. Transfer the spinach to a mesh strainer to let any excess water drain out.
Return the pan to the burner and coat the pan with olive oil and add in 2 more garlic cloves that have been smashed with the heel of your hand. Repeat the process of cooking the garlic to golden brown and discarding. Toss in a pinch of crushed red pepper and the sliced mushrooms. Season the mushrooms with salt and cook until they are soft and wilted, add a little more oil if they are a little dry. Taste the mushrooms and adjust the seasoning if needed. Remove from the heat and let cool.
Squeeze out any excess liquid from the wilted spinach and coarsely chop. Add to the mushrooms, toss in the Parmigiano and stir to combine. Taste to make sure it is delicious. Reserve.
Lay the meat out and gently pound to flatten. Sprinkle generously with salt. Lay the prosciutto slices down the middle of the veal. Lay a log of the spinach and mushroom mixture down the middle of the prosciutto. Roll the veal around the prosciutto and tie the veal with butcher's twine.
Coat a Dutch oven with olive oil and bring to a medium-high heat. Add the veal roll and brown on all sides. Remove the veal from the pan and reserve.
Ditch any excess fat and add a few drops of new oil. Add the onions to the pan, stir to coat with the oil and season with salt. Lower the heat to medium and cook the onions, covered, for 7 to 8 minutes.
Uncover the onions, they should be very soft and wilted. Add the chopped garlic and rosemary and cook for 2 to 3 minutes. Add the wine and reduce by half.
Return the veal to the pan and add chicken stock until it comes about halfway up the sides of the veal. Toss in the bay leaves and thyme bundle. Cover and place in the oven and cook for 1 hour.
Remove the veal from the oven, turn over and add more stock if the liquid has reduced. Taste the braising liquid if the liquid level has reduced significantly. Cook for 1 hour.
Remove the lid from the Dutch oven and braise for another 45 minutes to allow the liquid to reduce.
Remove the veal from the oven, remove from the pan, cover with foil and let rest for 15 minutes. Place the Dutch oven on a burner over medium heat to reduce the braising liquid if it is too soupy. Taste the liquid to make sure the seasoning is correct.
Slice the veal into medallions and serve with the braising liquid and onions.