This is just a wild unthought through idea so it might have no value at all. Let O be the the center of the bounding sphere of the mesh. Let P and Q be two points on the mesh. Let R be the point on the sphere where the extended line OP meets the sphere and S the same for OQ. Let RS be the shortest path from R to S on the surface of the sphere. For each point T on the path Ă§onstruct OT. For each T calculate the point M where OT meets the mesh. Hopefully all points M would form the shortest path on the mesh from P to Q. Might give it a go next week.

EDIT Sorry prym8 this is nonsense. Imagine three tall buildings in a row in the order, A, B, C a free runner (no jumping) at the top of A wants the shortest route on the surface to the top of C. The method above would take the runner down A, up one side of B, down the other side of B and up the side of C. Necessary in 2D but in 3D go down A, run on the ground around B and up C.