Prep for baking. Preheat oven to 350°F (175°C) with the rack in the center—line 2 cupcake trays with paper liners.
Mix wet ingredients with sugar. Cream butter in an electric mixer on medium speed until fluffy, about 2 minutes. Gradually add the sugar and beat for 3-4 minutes more until fluffy and light in color. Then, add egg yolks, one at a time, blending well after each addition and scraping down the sides of the bowl as needed. Remember to add the vanilla and coconut extracts and mix until combined.
Add dry ingredients. Combine flour, baking powder, and salt in a separate large mixing bowl. With the mixer on low speed, add the dry ingredients to the butter/sugar mixture one cup at a time, alternating with the milk. Start and end with the dry ingredients.
Beat and add egg whites. Beat egg whites with a handheld electric mixer in a medium bowl until soft peaks form. Gently fold the egg whites into the cake batter using a rubber spatula until combined. Do not overmix. Use a cookie scoop or spoon to scoop the cake batter into the prepared cupcake trays, filling each liner about 2/3 full.
Bake. Bake for 18-22 minutes, switching the trays halfway through baking, until a cake tester or toothpick inserted into the center comes out clean. Remove from the oven and let cool in the trays for a few minutes, then transfer to a wire rack to cool completely before filling and frosting.
Fill cupcakes. Once the cupcakes are completely cooled, fill them with lemon curd using a piping bag. Alternatively, remove a small portion from the center of each cupcake with a knife or cupcake corer and spoon in the lemon curd.
Make the frosting. In a mixing bowl, beat cream cheese and butter together until fluffy. Add vanilla extract and mix until smooth. Gradually add powdered sugar, beating at low speed until incorporated, then at medium speed until fluffy.
Add coconut. Frost the cooled cupcakes with the cream cheese frosting. Roll the frosted cupcakes in a plate of sweetened flaked or shredded coconut.