I solved this problem differently, than answers sugested me.
First of all, when player isn't clicking move left/right button and doesn't jump, I made velocity Y = 0.
Next, instead of moving player in straight direction like this:
body.setLinearVelocity(new Vector2(-10, body.getLinearVelocity().y)); // LEFT
body.setLinearVelocity(new Vector2(10, body.getLinearVelocity().y)); // RIGHT
I check for a platform angle and then accordingly rotate that vector like this:
float tetha = platformAngle;
velocity.x = (float) (velocity.x * Math.cos(tetha) - velocity.y * Math.sin(tetha));
velocity.y = (float) (velocity.y + velocity.x * Math.sin(tetha) + velocity.y * Math.cos(tetha));
Also, I use this rotated vector only, when player is walking downhill. I noticed, that if he is walking uphill, then on top of the slope he jumps due to the upwards rotated velocity. So when he is walking uphill, I just use a straight vector and scale it accordingly, so that he won't slow down.