Preheat the oven to 350 degrees F. To make the cake, in the bowl of an electric mixer, beat the sugar and oil until creamy. Add the eggs one at a time, beating well after each addition until smooth and yellow, about 4 to 5 minutes. In a large bowl, sift together the flour, baking soda, cinnamon, nutmeg, baking powder, and salt. Add the flour mixture, a little at a time, to the sugar mixture, beating well after each addition. Add the carrots, nuts, pineapple, and Grand Marnier. Beat on low speed until well blended. Pour into 3 eight-inch cake pans that have been greased and dusted with flour. Bake for about 30 to 35 minutes, or until a toothpick inserted in the center comes out clean. Cool in the pans for 10 minutes before turning out onto wire racks.
To make the filling, in a medium saucepan, combine the pineapple, sugar, flour, and butter. Cook over medium heat, stirring constantly, until thickened. Remove from the heat and cool completely.
To make the frosting, in a medium-size bowl, cream the butter and cream cheese until fluffy. Add the vanilla, confectioners’ sugar, orange juice, and orange rind. Mix until smooth.
To assemble the cake, place one cake layer on a serving plate and spread half the pineapple filling on top. Add another layer and spread the remaining filling on top. Add the third layer and spread the frosting over the top and sides of the cake. Decorate with pecan halves or chopped walnuts if desired. Refrigerate until ready to serve.