Preheat oven to 350°F (175°C). In a bowl, combine graham cracker crumbs, melted butter, and granulated sugar until the texture resembles wet sand.
Press the mixture firmly into the bottom and up the sides of a 9-inch pie dish. Bake 8–10 minutes until fragrant and lightly golden. Cool completely.
In a medium saucepan (off heat), whisk whole milk, 1 cup heavy cream, granulated sugar, and cornstarch until smooth with no lumps.
Place saucepan over medium heat, whisking constantly, until the mixture thickens and coats the back of a spoon (do not boil hard).
In a separate bowl, whisk egg yolks. Slowly stream in about 1/2 cup of the hot milk mixture while whisking to temper the yolks.
Pour the tempered yolk mixture back into the saucepan. Cook 2–3 minutes over medium heat, whisking constantly, until glossy and thick.
Remove from heat; stir in vanilla extract, salt, and sweetened shredded coconut.
Pour warm coconut custard into the cooled crust. Smooth the top, then press plastic wrap directly onto the surface to prevent a skin. Chill at least 4 hours or overnight until set.
Just before serving, whip 1 cup heavy cream with powdered sugar and vanilla to soft peaks. Spread over the chilled pie.
Toast coconut flakes in a dry skillet over medium heat, stirring constantly, until golden. Cool, then sprinkle over the whipped cream. Slice with a hot, wiped knife and serve cold.