I wonder if filtering just based on the GPS previous positions (thus averaging different errors to kinda cancel them) works almost equally well in this case, since cars tend to move in a quite smooth way.
'almost' equally well is a bit qualitative; one of the main advantages of a kalman filter is that it's predictive and so doesn't suffer from the lag that a simple low-pass filter has. But as you say, a car is not a missile so the degree to which the performance of a LPF is worse than a KF may not be significant.
Calculating a position (and time) from the GPS data is basically a case of throwing it in a matrix and calculating the fix with the least squared error, and many receivers do just just. However, many (most?) actually use a Kalman filter, which takes into account the estimated error from the previous fix (and calculates a new estimated error to be taken into account for the next fix). So what you're suggesting is already done inside the receiver.
This is also the ideal place to add in additional data such as from an accelerometer. If you only have the calculated position (and speeds, which are useful for figuring out how far you're actually likely to have moved since the last fix) but not the error estimates to work on then you've thrown away much of the useful data.
In the case of sat nav software, the software is at its most important when users aren't moving in a smooth way.
Sure, 99.9% of gps measurements on a sat nav are users going in a straight line - but it's when navigating complex junctions with many turns, traffic circles etc that users most need the sat nav's guidance.