Set your oven to 350°F (177°C). Grease a 10- to 12-cup Bundt pan generously.
In a medium bowl, whisk together cake flour, baking powder, baking soda, and salt. Set aside.
In a large bowl, use a handheld or stand mixer on high to beat butter until smooth (about 1 min).
Add granulated sugar and lemon zest, beat on high for 3–4 mins until creamy. Mix in oil, then add eggs one at a time.
Add sour cream, vanilla, and coconut extracts. Beat on medium-high speed until well combined.
Whisk lemon juice and milk together. With the mixer on low, add dry ingredients in 3 parts, alternating with the lemon-milk mix.
Mix until just combined—avoid over-mixing. The batter should be thick and fluffy.Gently fold in the coconut.
Spoon or pour the batter evenly into the Bundt pan. Bake for 55–65 mins or until edges are golden brown.
If the top browns too quickly, cover loosely with aluminum foil halfway through.
Let the cake cool in the pan on a rack for 2 hours. Invert onto a cake stand or serving plate. Cool completely before moving on.
With a handheld or stand mixer, beat cream cheese and butter until smooth (about 2 mins).
Add confectioners’ sugar, 1 Tablespoon lemon juice, and vanilla extract on low speed.
Add 1 more Tablespoon lemon juice if you prefer a thinner consistency. Taste and add a pinch of salt if desired.
Frost the cooled Bundt cake with an icing spatula or knife. Top with sweetened coconut.
Fill the center hole with candy-coated chocolate eggs. Serve immediately or refrigerate for up to 24 hours.
If refrigerated for more than an hour, let it sit at room temperature for about 30 mins before serving to soften.
Tightly cover any leftover cake. Store in the refrigerator for up to 5 days, preferably in a cake carrier for freshness.