In my experience, the in-house physics implementation of the game engines works well for implementing real physics (golf, angry birds, ...). But from an arcade point of view (and I include platformers here) it is better to implement your own physics logic. It is predictable, customizable, and deterministic. And the last one is super important to obtain the desired behavior.
So I would use a CharacterBody2D and make a Gravity, Impulse, ... implementation.
GDQuest have a nice video about 2D Platformer, the video is outdated and they use KinematicBody2D, you should replace this for CharacterBody2D