Heat coconut milk until hot, but not boiling. Meanwhile, beat egg yolks in a small bowl with a fork until well blended.
When coconut milk is hot, slowly add about 4 tablespoons to egg yolks, stirring quickly with a fork after each small addition.
Pour yolk mixture slowly into hot coconut milk.
Reduce heat to low, then gently sprinkle and whisk in sweetener and xanthan gum.
Cook for 3-4 minutes or until thickened, then remove from heat.
Stir in vanilla extract.
Spoon into medium bowl and cover with plastic wrap directly on so skin won't form. Place filling in refrigerator to chill at least 4 hours.
Spread coconut on a baking sheet and toast in 375°F oven just until golden (about 3-5 minutes). Remove and allow to cool on rack.
Pour one tablespoon water in a small bowl and sprinkle gelatin on top. Once gelatin has softened, stir in 1 tablespoon hot water until all gelatin has dissolved.
With an electric mixer, whip the heavy cream with the 1 teaspoon vanilla and 3 tablespoons sweetener until soft peaks form. Slowly pour in dissolved gelatin mixture and beat cream until stiff.
In large bowl, beat cream cheese until light and fluffy. Slowly beat in the chilled coconut pudding, adding a small amount at a time until smooth.
Fold in about half the whipped cream into the cream cheese pudding mixture until smooth.
Spread coconut pudding cream mixture into the cooled crust. Top with the remaining whipped cream and sprinkle the toasted coconut on top.
Chill for at least 4 hours.