Preheat oven to 350°F (175°C). Line a jelly roll pan with parchment paper and grease lightly.
In a bowl, mix flour, sugar, baking powder, cinnamon, and salt until combined.
In another bowl, beat eggs until frothy. Add grated carrots and vanilla extract; mix well.
Gradually combine wet and dry ingredients until just mixed. Pour into prepared pan and spread evenly.
Bake for about 15 minutes or until a toothpick comes out clean. Let cool slightly.
Invert onto a powdered sugar-dusted kitchen towel and roll up tightly while warm; let cool completely.
For the filling, beat cream cheese, powdered sugar, and butter until smooth. Unroll the cooled cake and spread filling evenly before rolling it back up without the towel.
Wrap in plastic wrap and refrigerate for at least an hour before slicing.