Sorry. I am not sure how I have managed to miss all these bumps. I'm terribly sorry about that.
Solving this is unfortunately a pretty hard problem. I have done some experiments with cooperative pathfinding (see https://arongranberg.com/2015/06/cooperative-pathfinding-experiments/) but that only works for strictly grid-based pathfinding and movement. I also did some experiments with a local pathfinder that tried to move around agents in a slightly better way than can be accomplished with only local avoidance, however it had significant performance problems.
What you could try is to use Physics.RaycastAll to check how many agents there are in front of your current agent. If there are a lot of them, use two more Physics.RaycastAll checks diagonally forward to the left and right and move towards the one that has the lowest density of agents. That might give you more fluid movement.
You can also experiment with the ITraversalProvider to add penalties for moving where agents are (which seems to be similar to what you are suggesting). In my experience this leads to a lot of jitter however, but it was quite a long time since I tried it though. See https://arongranberg.com/astar/docs/turnbased.php#ITraversalProvider