foresightful acceleration and decelerations
I think an approach that will work is to &quot;work backwards&quot; through the path, keeping track of the maximum velocity that can be used at that point (subject to the restrictions on acceleration), then &quot;work forwards&quot; along the path, assigning a velocity at each point (subject to the restrictions on acceleration).
Represent the path as a sequence of evenly spaced points $P_1,\dots,P_n$, i.e., $P_1$ is the start of the path, $P_n$ is the end of the path, and $\|P_{i+1}-P_i\|_2$ is the same for all $i$.  At each point $P_i$, you know the direction $D_i$ the car will be heading: $D_i$ is a unit-length vector that is tangent to the path at that point, so we can approximate $D_i = (P_{i+1}-P_{i-1})/\|P_{i+1}-P_{i-1}\|_2$, using vector arithmetic.  I'll describe an algorithm to compute speeds $s_1,\dots,s_n$ so that $s_i$ represents the speed of the car at point $P_i$, and so that the acceleration constraints are satisfied.  Then the car's velocity vector at point $V_i$ will be $V_i = s_i D_i$.
What constraints do the acceleration constraints impose on the $s_i$?  Well, I'll assume your goal is to impose an upper bound on the maximum acceleration allowed: in particular, I'll assume we have a constant threshold $c$ and we require that the acceleration vector $A_i$ satisfies $\|A_i\|_2 \le c$ at every point.  Notice $$A_i = {V_{i+1} - V_i \over \|V_i\|_2/\|P_{i+1}-P_i\|},$$ so the constraint $\|A_i\|_2 \le c$ becomes
$$\|s_{i+1} D_{i+1} - s_i D_i\|_2 \le c s_i / \|P_{i+1}-P_i\|.$$
Given $s_{i+1},D_i,D_{i+1}$, we can obtain an upper bound on the maximum allowable $s_i$ that is consistent with this constraint, as the constraint is equivalent to
$$\|s_{i+1} D_{i+1} - s_i D_i\|_2^2 - c' s_i^2 \le 0,$$
where $c' = c \|P_{i+1}-P_i\|$ is a known constant. The left-hand side of that is a quadratic function in $s_i$, so you can efficiently compute an upper bound on $s_i$ by solving a quadratic equation.  Moreover, given an upper bound on $s_{i+1}$, we can obtain an upper bound on $s_i$ by replacing $s_{i+1}$ in the equation above with the upper bound and solving for the upper bound on $s_i$.
So, our strategy during the backwards pass will be: at each point $P_i$, we will compute an upper bound $u_i$ on the maximum speed $_i$ that the car can be permitted to have at that point.  In particular, we'll choose $u_i$ so we're assured that if the car has speed $u_i$ or less at $P_i$, then there is a way to complete the path so that from $P_i \ldots P_n$ the car satisfies all the constraints.  We've already described how to do this: given $u_{i+1}$ (an upper bound on $s_{i+1}$), we described above how to compute $u_i$ (the upper bound on $s_i$).  Thus, during the backwards pass, we will iterate through $i:=n,n-1,\dots,1$, setting at each step $u_i$ based on $u_{i+1}$.  At the end of the backwards pass, we have computed all of the $u_1,\dots,u_n$.
Next, we will do the forwards pass, to assign a speed at each point.  Iterate through the points in the order $i:=1,2,\dots,n$.  At each step, we'll compute $s_i$ based on $s_{i-1}$ and $u_i$.  In particular, the acceleration constraints impose a constraint on $s_i$: $\|s_{i} D_{i} - s_{i-1} D_{i-1}\|_2^2 \le c' s_i$.  We also have the constraint $s_i \le u_i$.  You can solve this to find the maximum possible value of $s_i$ (it involves solving a quadratic equation), and assigning $s_i$ this value.  Continue forward along the path, until you have assigned speeds $s_1,\dots,s_n$ for the entire path.
The result will be a valid plan for how to traverse the path.  In particular, at point $P_i$, the car will be travelling at speed $s_i$.  While at point $P_i$, you will accelerate or decelerate the car so that by point $P_{i+1}$ it is travelling at speed $s_{i+1}$.  This can be done by using the gas pedal or brake pedal to accelerate by $A_i \cdot D_i$, where $A_i = s_{i+1} D_{i+1} - s_i D_i$ (this will ensure acceleration in the $D_i$ direction of the acceleration vector $A_i$), using the steering to stay on the road (this will ensure acceleration in the direction perpendicular to $D_i$ to stay on the road).
This solution assigns the maximum possible speed at each point, and thereby traverses through the path in the fastest way possible, while respecting the limits on acceleration at every point along the path.