In a small saucepan, add milk. Sprinkle gelatin over the top and let sit 5 minutes without stirring.
Transfer saucepan to a stove and heat over medium-low flame. Slowly heat the gelatin mixture, stirring frequently, until the gelatin is completely dissolved, about 5 minutes. Remove from heat and cool to room temperature, at least 15 minutes.
In a large bowl, add gelatin mixture and both boxes of pudding mix. Whisk vigorously until pudding has dissolved and the mixture is smooth. In a second bowl, whisk together pumpkin puree and pumpkin pie spice.
Fold in pumpkin mixture into gelatin mixture until evenly incorporated. Scrape into graham cracker crust and smooth the top. Chill until firm, at least 4 hours or overnight. Serve with whipped cream if desired.
Gelatin: Look for envelopes (not sheets) such as Knox brand unflavored gelatin. The two types of gelatin are usually interchangeable, but this recipe hasn't been tested with gelatin sheets so I don't know for sure.
Instant pudding: Do not substitute Cook and Serve pudding.
Pumpkin pie spice: Or substitute 1 teaspoon cinnamon, 1/4 teaspoon ginger, and 1/4 teaspoon nutmeg.