You actually have much more time to input a jump than you think because the inputs are buffered; this means you can tap-and-release jump before you even hit the platform and you'll skip off of it quite consistently.
Thanks for your feedback!