Heat oven to 350° F.
In a large saucepan, over medium-high heat, bring 3 cups of the milk to a boil.
In a small bowl, whisk together the remaining milk and the cornmeal. Whisking constantly, slowly add the mixture to the boiling milk. Reduce heat and simmer gently, stirring frequently, for 15 minutes. Remove from heat. Stir in the molasses, butter, brown sugar, salt, ginger, cinnamon, nutmeg, and vanilla. Transfer to a buttered 1 1/2-quart casserole dish. Set the casserole in a roasting pan, pull the oven rack out halfway, and place the pan on it. Carefully add enough hot water to the pan to reach halfway up the casserole. Cover both pans with a single large sheet of foil. Bake for 1 hour.
Remove foil. Bake until the pudding is almost set but still wobbly, 1 1/2 hours more. Transfer casserole to a wire rack for at least 30 minutes. Spoon onto plates. Serve with the whipped cream and sprinkle with nutmeg.
In Advance: Bake the pudding and let it cool. Set aside at room temperature for up to 4 hours. If desired, cover with foil and warm in a 250° F oven for 30 minutes.