Preheat oven to 350°F. Butter and flour two 9-inch round cake pans.
In a large bowl, with a wire whisk, beat the eggs and gradually add the sugar; add canola oil and vanilla and whisk again. Over a sheet of waxed paper or another bowl, sift the flour, baking powder, cinnamon, and salt. Stir into the egg mixture. Fold in the carrots, pineapple, and pecans. Divide batter between the two cake pans. Place them in the center of the oven and bake until a toothpick inserted in the center comes out clean, 25 to 30 minutes. Remove from oven; cool completely.
Frosting: In a large bowl, with an electric mixer, beat the cream cheese and the butter together until smooth and creamy; add vanilla. Gradually add the confectioners sugar until it is of spreading consistency.
Assembly: Remove the cakes from the pans and place one layer upside down on a cake plate, so that the flat bottom in on top. Spread about 1/3 of the frosting over the layer. Place the second layer on top of the first, rounded side up. Use remaining frosting to spread over the top and sides of the cake. Garnish with whole pecan halves, if desired.