In a large bowl using a hand mixer or stand mixer, beat together butter and both sugars until smooth.
Add in shredded carrots, coconut vanilla extract, egg yolks, and milk/cream. Mix to combine.
In a separate bowl, sift together flour, baking soda, baking powder, cinnamon, ginger, nutmeg, and salt.
With the mixer on low, slowly add flour mixture about 1 cup at a time to the butter mixture. Continue beating until combined.
Using a large cookie scoop or ice cream scoop, form 16 large balls, slightly larger than a golf ball, and place about 2 inches apart on a baking sheet (or two) lined with parchment paper.
Press each ball flat, slightly smaller than an inch tall, and bake for 12-14 minutes. Remove from oven and place on a cooling rack to cool completely, about 30 minutes.
Cinnamon Cream Cheese Buttercream
While the cookies bake and cool, take a large bowl and beat together butter and cream cheese.
Add in cinnamon, extract, and salt. Slowly, with the mixer on low, pour in the powdered sugar 1 cup at a time until fully combined. If too thick, add 1 tbsp of milk at a time until the desired consistency is reached.
Fill a piping bag or gallon ziplock bag with the frosting, cut a medium hole at the tip, and pipe a spiral onto each cookie, starting at the center and working your way outwards.
Sprinkle each cookie with crushed walnuts or pecans, if desired, and serve.
Store in an airtight container in the fridge for up to one week.