To make the peanut butter pudding: In a large saucepan, whisk together sugar, cornstarch, and salt. Slowly whisk in milk, then the cream and place over medium heat. Once the mixture comes to a boil, whisk constantly until thickened, about 30 seconds. Mix in the creamy peanut butter and bring back to a boil. Constantly whisk until thickened, about 1 minute, then remove from heat. Stir in the vanilla extract. Fill the serving glasses halfway with the peanut butter pudding. Place in refrigerator to chill.
To make the chocolate pudding: In a large saucepan, whisk together sugar, cornstarch, cocoa powder, and salt. Slowly whisk in milk, then the cream and place over medium heat. Once boiling, whisk constantly until thick, about 30 seconds. Mix in chopped chocolate until melted and smooth. Bring back to a boil and whisk constantly until thickened, about 1 minute. Remove from heat and mix in the vanilla extract. Allow to cool for 5 minutes before pouring over the peanut butter pudding. Refrigerate uncovered until chilled, about 2 hours. If making up to a day in advance, refrigerate covered until ready to serve.
To make the whipped cream: In a medium bowl, beat together cream and powdered sugar using a hand or stand mixer until soft peaks form. Serve immediately over pudding parfaits and garnish with shaved chocolate.