One thing that should be mentioned, is that the Least-Cost-Path is computed as, literally, the least cost path, and not as th Shortest Path. Also cited from ArcHelp for Cost Distance Analysis:
The cost distance tools are similar to Euclidean tools, but instead of calculating the actual distance from one location to another, the cost distance tools determine the shortest weighted distance (or accumulated travel cost) from each cell to the nearest source location
Thus, the output you have recieved chose a path which follow the rule of the lowest cumulative slope. Yet, it is longer than the other path you have obtained (red one).
To compute Euclidean Distane in arcmap, you may want to use the Euclidean Distance Tool; that is to say that arcmap do provide an algorithm to compute anisotropic distance (cost surface). Yet it ignores other obstacles, such as: cliffs, rivers, or from other costs such as: slopes.
Than, you should use the path distance which is similar to the cost distance tool, i.e. taking slopes as costs; but also consider euclidean distance as a factor while generating a cost surface and calculating a least-cost (this time, also shortest) path. As in:
The path distance tools are similar to the cost distance tools in that both determine the minimum accumulative travel cost from a source to each cell location on a raster. However, path distance not only calculates the accumulative cost over a cost surface, it does so while compensating for the actual surface distance that must be traveled and for the horizontal and vertical factors influencing the total cost of moving from one location to another. The accumulated cost surface produced by these tools can be used in dispersion modeling, flow movement, and least-cost path analysis.
Regarding the slope constraint: you can assign NoData (set Null in field caluclator) for each cell with a slope >= 5%. That will prevent a path from being generated through those cells.