To make the donuts: In the bowl of a stand mixer combine all the dry ingredients and mix to combine.
In a small bowl whisk together the vanilla, eggs, sour cream, and molasses. Pour the wet into the dry, add the grated carrot, and mix on low with the paddle attachment. Pour in the melted butter and mix until a soft cookie dough forms. Cover and refrigerate for 45 minutes.
On a well floured surface, roll the dough out to about 1" thick. Using a floured 3 1/2" circle cutter, cut as many circles from the dough as possible and place them on a parchment lined baking sheet. Gather the scraps of dough up, bring them back together and repeat until all the dough has been used up. Using a 1" circle cutter, cut holes from the middle of each donut. Refrigerate donuts for 30 minutes.
Heat 2 inches of canola oil in a high sided pot to 350 degrees F. Using a 2" circle cutter, gently press the cutter into the donut around the middle ring just to score the top, do not press all the way through (just enough to leave a small imprint).
Gently lower 2-3 donuts into the oil, scored side down, and fry for 1-2 minutes per side until golden brown. Transfer to a wire rack set over a baking sheet. Once all the donuts have been fried, fry the donut holes for 2 minutes, until golden brown. Transfer to the wire rack.
To make the glaze: In a small bowl, combine the softened cream cheese and powdered sugar and beat together with a hand mixer. Add the vanilla and heavy cream and mix until the glaze is very smooth.
When the donuts have cooled slightly, dip them into the glaze and return them to the wire rack. Coat the donut holes in glaze and allow them to dry. Sprinkle donuts and donut holes with toasted walnut bits.