His knees are compressing into themselves with the bob. Remember, all the parts are going to move in a good idle, you can't really get away with just moving bits up and down. Try to simplify designs to work around this if you're work-averse, or be prepared to redraw things at different angles to make motions work.

For example, to move like he is here it might be prudent to have his chest expanding and contracting with big deep breaths, that movement pushing his shoulders back and forth. Would give him a solid, bearish kind of personality.

Alternatively, you could have him shift left and right on his feet to give him an agile, powerful boxer kind of look.

However, I think most important right now is for you to redraw the arms. They're kind of poorly posed, and the proportions on the whole picture look a bit off to my eye and I cannot truly tell why, if someone else could pick that thread up for me it'd be appreciated.

This are my 2 cents, You could try exaggerating the animation a bit, make it a bit more dramatic add some chest expand when he is breathing in arch his back a bit like a superman-like pose and then release.

I considered that, but I don't want his idle animation to be too distracting, because it's the player character of a platformer (not really a traditional platformer, though). It could turn into an eyesore if he moves like a 2v2 fighter game.

I was planning on doing that, actually .But this is his main idle animation so to speak, so after looping this 6 or 7 times maybe he could do something like that (because who doesn't like those lovable quirks that your character has?)