Beat butter and sugar in a large bowl until light and fluffy, about 3 minutes. Add vanilla extract and mix until combined.
Add eggs one at a time, beating well after each addition until fully incorporated.
Whisk together flour, baking powder, and salt in a separate bowl. Gradually add to the butter mixture, mixing on low speed until just combined.
Divide the dough - remove about 1/3 of the dough and place in a separate bowl. Add food coloring to this portion and mix until evenly colored.
Roll colored dough between two sheets of parchment paper to 1/4 inch thickness. Cut out heart shapes with cookie cutter. Freeze hearts for 15 minutes.
Arrange hearts into a log shape, pressing them together gently. Freeze the log for another 10 minutes.
Flatten plain dough into a rectangle. Wrap it around the frozen heart log, pressing seams together firmly. Roll gently to smooth.
Wrap tightly in plastic wrap and freeze for at least 30 minutes, or up to 3 months.
Preheat oven to 350°F. Line baking sheets with parchment paper.
Slice cookies about 1/4 inch thick using a sharp knife. Place 2 inches apart on prepared baking sheets.
Bake for 10-12 minutes until edges are lightly golden. Let cool on pan for 5 minutes before transferring to a wire rack.