Line an 8×8-inch square baking pan with parchment paper, leaving an overhang on two sides to lift the fudge out later. Lightly spray the pan first so the parchment sticks and doesn’t slide around.
In a medium saucepan over low to medium-low heat, combine the pumpkin puree, pumpkin pie spice, cinnamon, and fine sea salt. Cook, stirring often, for 3–5 minutes until the mixture slightly thickens and smells fragrant. This cooks off excess moisture and intensifies the spice flavor.
1/2 cup pumpkin puree, 1 1/2 teaspoons pumpkin pie spice, 1 teaspoon ground cinnamon, 1/4 teaspoon fine sea salt
Add the sweetened condensed milk and butter to the saucepan with the pumpkin mixture. Keep the heat low and stir constantly until the butter is completely melted and the mixture is smooth and uniform. Do not let it boil.
14 oz sweetened condensed milk, 4 tablespoons unsalted butter
Reduce the heat to as low as possible. Add the white chocolate chips to the warm pumpkin mixture and stir gently and continuously until the chips are almost completely melted and the mixture is thick and smooth. If a few small bits remain, remove the pan from the heat and continue stirring; the residual heat will usually finish melting them. If the mixture looks greasy or starts to separate, remove from heat and stir briskly until it comes back together.
3 cups white chocolate chips
Once the white chocolate is fully melted and the mixture is smooth and glossy, stir in the vanilla extract. If using nuts, gently fold them into the fudge mixture. The mixture should be thick, glossy, and pale pumpkin-colored.
2 teaspoons vanilla extract, 1/2 cup pecans or walnuts
Scrape the fudge mixture into the prepared pan and spread it evenly with a spatula. Tap the pan gently on the counter a few times to release air bubbles. If using toppings such as extra chocolate chips, coarse sea salt, or cookie crumbs, sprinkle them evenly over the warm fudge and press very lightly so they adhere.
2-3 tablespoons white or dark chocolate chips, coarse sea salt flakes, crushed gingersnap cookies or graham cracker crumbs
Cover the pan loosely with foil or plastic wrap and refrigerate for at least 3–4 hours, or until the fudge is firm enough to slice. For the cleanest cuts and best texture, chill overnight.
Lift the chilled fudge out of the pan using the parchment overhang and place it on a cutting board. Using a sharp knife, cut into 25 larger squares (5×5) or up to 36 smaller squares (6×6). For very neat edges, run the knife under hot water, wipe it dry, and cut, wiping the blade between slices. Serve chilled or at cool room temperature.