Prepare the dough: Pour milk into a large glass measuring cup. Add butter and microwave on high, until the butter melts and the mixture is warmed to 120°F to 130°F (it should feel warm but not hot). Start with 30 seconds, then microwave in 10 second intervals, until the desired temperature is reached. Once heated, pour into the bowl of stand mixer fitted with paddle attachment or a large mixing bowl.
Add white whole wheat flour, granulated sugar, egg, vanilla, yeast, salt, cinnamon, cardamom, and cloves. Beat on low speed for 3 minutes, stopping occasionally to scrape down sides of bowl. Add 2 1/2 cups all-purpose flour. Beat on low speed, until the flour is absorbed and the dough is sticky, scraping down sides of bowl as you go. If dough is very sticky, add more flour one tablespoon at a time, combining after each, just until dough begins to form a shaggy ball and pulls away from sides of bowl. It should still feel somewhat sticky and tacky.
If using a stand mixer, fit the mixer with a dough hook and knead on medium low for 6 minutes, until smooth and elastic. If kneading by hand, turn the dough out onto lightly floured work surface and knead until smooth and elastic, about 8 minutes. Add a little flour, one tablespoon at a time, if the dough is too sticky. Lightly oil a large, clean bowl with cooking spray. Form dough into a ball and place it in the bowl, turning once to coat with oil. Cover bowl with plastic wrap or a clean kitchen towel. Let rise in a warm, draft-free place until doubled in volume, about 2 hours.
Make the filling: If using a chocolate bar, roughly chop the chocolate into chunks. In the bowl of a food processor fitted with a steel blade, place the chocolate granulated sugar, brown sugar, cinnamon, cardamom, ground ginger, salt, black pepper, and cloves. Pulse until the chocolate is very finely chopped and some parts are powdery. Add the butter and pulse again, until the butter is evenly distributed throughout the chocolate. (If you do not have a food processor, chop the chocolate very finely, then stir in the sugar, spices, salt, pepper, and butter until you have a rough paste.) Add candied ginger and pulse a few additional times, just until barely combined. Set mixture aside.
Form the rolls: Once the dough has doubled, turn it out onto a well-floured work surface. (To test if the dough has completed rising, gently press it with your first two fingers; if the indentation remains, the dough is ready.) Roll the dough into a 16x12-inch rectangle (be sure to measure.) Sprinkle the filling evenly over the dough, leaving a ½-inch border uncovered on each side. It might seem like too much filling, but use all of it. Starting at one of the long edges, roll the dough into a tight log, then tightly pinch the end to seal. Turn log so that the seam side is down, then carefully trim each end so that they are straight. (The end scraps can be baked separately in lightly greased ramekins.) Gently stretch and pat the log as needed so that it is 18 inches in length and roughly even in diameter. With a serrated knife, gently saw the log into 18 1-inch segments.
Lightly mist two 9x9-inch baking pans with cooking spray (a square 8x8-inch pan or round 9-inch pan will work as well.) Arrange the rolls in the pans, cut sides up, dividing the rolls evenly between each. Cover the baking dishes with plastic wrap or a clean kitchen towel and let rise in a warm, draft-free place until doubled in volume, about 45 minutes. (It may take a bit longer but is worth the wait). *Make ahead note: Rather than let the rolls rise at room temperature, you can cover the pans with plastic wrap lightly coated in cooking spray, then place in refrigerator to let rise overnight. Let rolls sit at room temperature 15-30 minutes while oven is preheating.
Place rack in the center of your oven and preheat to 375°F. Bake rolls until the tops are golden and the centers reach 185°F to 190°F, 20-25 minutes. Check the rolls at the 15 minute mark—if they begin to brown too quickly, cover the pan with foil and continue baking until complete. Remove from oven and place pan on a cooling rack for 5 minutes.
While the rolls bake, prepare the glaze: Stir together the sifted powdered sugar, half and half, cinnamon, cardamom, and cloves. Once rolls have cooled 5 minutes, drizzle over the rolls using the tines of a fork or a small spoon, and serve warm.