The controller linked doesn't appear to have any externally-available reverse function. It may have one in it's display setup menus, but it probably isn't accessible quickly and easily.
There could be a pad available on the board for the function...but it would require disassembly of the controller and experimentation to find, if it exists. (risking damage to the controller).
I am not sure how well the motor will do what you want, but I haven't tried something like this, so you'll have to try it out and see.
Presumably you are trying to only move the cart at walking speeds, so I would recommend picking parts that will result in the wheel(s) driven by the motor having a maximum speed that matches the fastest speed you want the cart to move at.
If you use a system that has a much higher speed than what you will use it at, and have to use full throttle to make it move the load, it will overheat the motor and possibly controller.
The closer to the speed you want the cart to go that the system actually runs at, the better and more efficiently it will operate, and the more controllable it will be.
BTW, a "trigger" type throttle might be easier to manipulate on a cart handle than a thumb type, and be harder to accidentally trigger by bumping into it with something. But that's something you'll have to decide based on your actual usage scenaro.
The sensitivity of the throttle usually depends more on the controller response and how well matched the system is to the intended usage and speed.
Most controllers, like the one you link to, control speed of the motor (not of the whole system), but there are controllers called FOC that control torque of the motor instead, and those are easier to control in situations like yours.
If you find it difficult to control with the setup you start with, and ti's already optimized for the speed range you need it to move at, then if you have to change controllers at any point, using one with FOC control (like any VESC, for instance) can make it easier to control with high loads at low speeds.
Theoretically, couldn't you add reverse to any controller just by having some huge switches/relays that swap the hall sensor order and phase wire order?
Yes, but you'd almost certainly have to power off the controller during the changeover so no damage could occur to the FETs due to controller trying to do something in reaction to the wiring change as it occurs. Not just come to a stop, but actually power off the controller (or at least it's LVPS / KSI wire disconnected), before switching directions this way.