In a separate bowl, whisk together the egg and milk. Slowly and continuously stir into the butter mixture. Bring to a boil, stirring constantly (to keep the egg from scrambling). Remove from heat.

Stir in nuts, coconut, and crushed graham crackers. Pour over graham cracker squares and spread evenly using a spatula. Top with another layer of graham cracker squares, pressing them down gently into the filling.

For the cream cheese frosting, place cream cheese in a bowl and soften using a rubber spatula. Gradually add butter and beat together until smooth and creamy. Sift in powdered sugar and continue beating until smooth. Add vanilla and stir to combine.