How to make Agent avoid edges

Hi, I have a NavMesh path like road with several rotations, where agent should follow the player. When agent moves, it always moves on the edge of that path. Is it possible to set something like “distance from edge” or optimal path for agent?
On the picture below you can see red square (agent) follows grey path and can literally get stuck in the edge of the NavMesh, because the player is on the other side. What I want from agent so it could follow orange path, like make it find the logical way towards the player.


You could look at the smooting algorithms that Aaron Granberg used in his free Astar Pathfinding Proejct. (They are in the Modifiers folder of his project file).

You could also change the NavMesh itself by pulling in the vertices close to edges.