Preheat oven to 400 degrees. Cut tops off pumpkins; scoop out and discard seeds. In a small bowl, combine granulated sugar and cinnamon; sprinkle inside pumpkins, and replace pumpkin tops. Place on a baking sheet, and bake until tender, 25 to 30 minutes. Remove from oven; let cool.
Combine brown sugar and cornstarch in a large heat-proof bowl set over a pan of simmering water. Add half-and-half, egg yolks, molasses, and salt; cook, whisking constantly, until mixture starts to thicken. Add the water in a slow stream, whisking constantly. Stir in pumpkin puree; cook until very thick, about 2 minutes. Remove from heat; let cool slightly.
When ready to serve, whip cream to soft peaks. Serve pudding in baked pumpkins topped with whipped cream and garnished with puff pastry leaves, if desired.