First of all understand that A* only works well for a limited set of problems. If you can't make a heuristic that gets close enough to the actually required time then Dijkstra's algorithm is often faster. On top of that it works with teleporters, speed boosters and anything else that breaks the standard assumptions of Euclidean geometry. And it is easier to implement.
The theoretical perfect solution to the problem is to use a search space that include velocity, and any other variable that is relevant to movement, so for a typical 2D platformer you would have a 4D search space consisting of position and velocity. Whether or not this is computationally feasible depend very much on the nature of the game.
If you use float precision it is pretty much impossible to make perfect pathfinding in any case, but if your physics system binds all values to a limited integer space it may be perfectly doable.
If the complete search for any reason is too much you may want to artificially limit the search space, this could for instance be through any combination of the following:
- Do not allow slowing down while running. (Though you must provide some means for the character to turn around before and after jumps.)
- Do only allow jumping at specific points. (Edge of platform and X distance before the end of other reachable platforms seems suitable.)
- Limit the air control to only change simulated input every X physics frames.
- Implement "buggy A*", that is favour branches that are physically closer to the target even though you cannot guarantee that they will be faster if they are chosen.
- Converge paths that are almost at the same spot in search space, if two routes lead to running in the same direction on the same platform you should terminate the slowest of the two search branches.
Depending on the context the result of these implementations may be satisfactory.
This whole answer assumes a fixed physics rate, combining variable physics rate and predictive AI is a world of trouble.