Make the cookie dough: In a large bowl, cream together the butter, sugar, and cream cheese with an electric hand mixer on high speed for about 5 minutes, until fluffy and the sugar is mostly dissolved. Scrape down the bowl as needed to evenly beat the mixture.
Add the egg, egg yolks, vanilla, and almond extract and mix well, scraping down the sides of the bowl.
Add the salt, then sift the flour, baking powder, and cream of tartar into the bowl and fold to incorporate some of the flour. Then beat on low speed, just until incorporated and the dough comes together.
Shape the dough into a flat disc and wrap tightly in plastic wrap. Chill in the refrigerator for at least 2 hours, or up to 3-4 days.
When ready to bake the cookies, preheat the oven to 350˚F (180˚C). Line a baking sheet with parchment paper.
Remove the dough from the fridge and let sit at room temperature for a few minutes to soften slightly.
On a lightly floured surface, roll out the cookie dough with a rolling pin to ¼-inch (6mm) thick.
Dip cookie cutters of your choice in some extra flour and cut out shapes from the dough. Gather any excess dough into a ball and chill in the fridge to firm, then re-roll and cut out more cookies. Place the cookies on the prepared baking sheet and chill for at least 20 minutes to ensure they hold their shapes.
Bake the cookies for 10-12 minutes, or until the edges just barely start to turn golden brown. Cool completely on a wire rack before decorating with royal icing or frosting.
To make the royal icing, sift the powdered sugar into a large bowl and add the salt. On one side of the bowl, add the vanilla and egg whites.
Where you added the liquids, begin whisking the powdered sugar into the liquids, gathering a bit more as you whisk to prevent lumps from forming, until all of the powdered sugar is incorporated. Add food coloring, if desired, and whisk to incorporate. You can divide the icing into smaller bowls to make more than one color. At this point, the icing should be a good consistency for piping borders. If you’d like the frosting to be looser to flood or dip your cookies, add a few tablespoons of water, 1 tablespoon at a time, until it reaches your desired consistency.