I think you've got the fundamentals right, the question can be resolved by considering the car as a combination of components rather than a single, point mass, and also by distinguishing between static friction while the car is stationary vs while it is moving.
EDIT : As correctly pointed in the comments, we need not resort to kinetic friction in this case. The answer has been corrected on this point.
Consider this sequence of steps in time:
(0) The car is stationary. Static friction is indeed present, and it is not doing any work.
(1) The engine burns fuel to generate some energy.
(2) This energy is converted to torque and transmitted to the wheels.
(3) The torque on the wheels is converted to tangential force at the wheel-road contact.
(4) This force is countered by static friction.
(5) When the torque on the wheels is sufficiently high, the tangential force becomes higher than the force due to static friction (this is limited by the coefficient of friction).
(6) At this point the wheels start rolling and now, the static friction generated keeps them rolling.
(If there was no static friction, the wheels would rotate and the car wouldn't move. If the torque on the wheels was really high, the wheels would spin AND the car would move, or rather skid. In that case, kinetic friction would be at work).
So the force causing net movement/acceleration is the resultant of tangential force due to torque and static friction force. The energy to generate both these forces is provided by the engine. The work is therefore being done by the engine, while the road only provides a surface for generating the necessary reaction.
I think my emphasis is the following idea - static friction very much exists even without the engine, or when the car is stationary. Static friction is responsible for motion only when the engine (or some other energy source) generates a combination of forces that can cause net motion.