Changing the variables changes the columns in the matrix, causing different rounding error in the LU decomposition. In the "successful" code, the matrix is computed to be singular, which Solve then handles. In the unsuccessful way, the rounding produces an inconsistent system (hence no solution).
With an overdetermined system with approximate coefficients, it is best to use LinearSolve or LeastSquares and check the residual.
{b, mat} = CoefficientArrays[{
59.5` + 0.1845` s == 60 + 0.18125` r,
-100 + 1.44` s == -100 + 1.45` r,
50 - 0.36` s == 50 - 0.3625` r}, {s, r}];
LinearSolve[Normal@mat, -b]
(* {111.1111111111137, 110.3448275862095} *)
LUDecomposition[Transpose@Append[Transpose@mat, b]]
LUDecomposition::luc: Result for LUDecomposition of badly conditioned matrix {{0.1845,-0.18125,-0.5},{1.44,-1.45,0.},{-0.36,0.3625,0.}} may contain significant numerical errors.
(*
{{{1.44, -1.45, 0.}, {0.128125, 0.004531249999999987, -0.5},
{-0.25, 1.225073682345004*10^-14, 6.125368411725019*10^-15}}, {2, 1, 3},
6.552893832811133*10^16}
*)
Switching the order of the variables {r, s} in the second argument is equivalent to switching the variables in the equations.
{b, mat} = CoefficientArrays[{
59.5` + 0.1845` s == 60 + 0.18125` r,
-100 + 1.44` s == -100 + 1.45` r,
50 - 0.36` s == 50 - 0.3625` r}, {r, s}];
LinearSolve[Normal@mat, -b]
(* {110.3448275862012, 111.1111111111053} *)
LUDecomposition[Transpose@Append[Transpose@mat, b]]
LUDecomposition::sing: Matrix {{-0.18125,0.1845,-0.5},{-1.45,1.44,0.},{0.3625,-0.36,0.}} is singular.
(* {{{-1.45, 1.44, 0.}, {0.125, 0.004500000000000004, -0.5}, {-0.25, 0., 0.}}, {2, 1, 3}, ?} *)
The upshot is that Solve is principally a symbolic solver, although it has been extended in recent versions to be more reliable on approximate-numeric problems. One would think NSolve would be the next thing to try, but it has the same problem. (Perhaps Solve calls NSolve. However on numerical linear systems, LinearSolve is a robust tool to use.
Note: Solve[sys // Rationalize] works, too, in this case.