Preheat oven to 350F. Line a 12-cup muffin tin with paper liners and set aside.
In a medium saucepan over medium heat, melt butter, swirling occasionally until a deep golden brown, about 8-12 minutes. Pour into a large mixing bowl and allow to cool 5 minutes.
Beat sugars into browned butter until smooth then mix in eggs, yogurt, and vanilla. Set aside for a moment.
In a separate medium bowl, combine flour, baking soda, baking powder, salt, cinnamon, and nutmeg. Fold flour mixture into liquid mixture until batter is just combined. Gently fold in coconut, carrot, and nuts if using.
Fill cupcake liners 3/4 full with batter, gently smoothing tops. Bake cupcakes at 350F 20-25 minutes until a toothpick inserted in middle of cupcake comes out clean. Cool cupcakes completely on a wire cooling rack.
Cream Cheese Frosting
Place cream cheese and butter in a large bowl (or a stand mixer fitted with paddle attachment) and use an electric mixer to beat on medium speed 2-3 minutes until creamy.
Add powdered sugar and vanilla to cream cheese mixture and beat an additional 3-4 minutes until frosting is completely smooth. Add half and half by the tablespoon, mixing until frosting is smooth and spreadable. Refrigerate frosting until ready to frost cupcakes.
Allow frosting to soften to room temperature if you refrigerated it before frosting cupcakes. Frost cupcakes and garnish with toasted nuts if desired. Store cupcakes in refrigerator until ready to serve. Enjoy!