In a large bowl, cream butter, granulated sugar, and brown sugar until lighter in color and slightly fluffy, about 2–3 minutes. The mixture should not look greasy or separated.
Add egg and egg yolk, mixing until smooth. Stir in vanilla extract, coconut extract, and optional rum extract.
In a separate bowl, whisk together flour, baking soda, salt, and cornstarch (if using).
Gradually mix dry ingredients into wet ingredients just until no dry streaks remain. Dough should be soft, slightly sticky, and able to hold a mound when scooped.
Fold in shredded coconut and white chocolate chips.
Drain crushed pineapple thoroughly and press with paper towels until nearly dry. Finely chop if pieces are large. Measure ⅓ cup after drying, then toss with 1 teaspoon flour.
Gently fold pineapple into the dough.
Chill dough for 1 hour.
Optional: Chill 30 minutes or scoop dough balls and freeze 15 minutes.
After chilling, check dough. It should hold its shape when scooped. If too soft, mix in 1 tablespoon flour.
Preheat oven to 350°F (175°C) and line baking sheets with parchment paper. Use center rack.
Scoop 40–45g (slightly heaped 2 tablespoons) dough balls and roll into tall mounds. Place 2.5–3 inches apart.
Bake for 11–12 minutes, until edges are lightly golden and centers are pale, soft, and set (not glossy).
Let cookies cool for 2–3 minutes until set but still warm, then gently press a halved, well-dried maraschino cherry onto each cookie (optional).
Transfer to a wire rack to cool completely.