Jokes aside :P
For the jump, I'd recommend using this:
https://answers.unity.com/questions/854006/jumping-a-specific-height-using-veloc...
On key release, zero the upward vector/value. You can create a separate variable for gravity when falling. That way you have a gravity value (or "speed") for jumping up, and down, giving you a fair bit of control on the feel.
The circle collider was probably better, you'd just need to control the slopes better. Your speed should be constant, and as it is now, I keep getting stuck in some places :(