If you display the value of pK0 I believe you will see that it did not completely rationalize and there is still a decimal point in one of the terms. This is probably because of the number of digits after the decimal point in one of the terms. Changing that expression to
pK0=Rationalize[-2622.38/T - 0.0178471 T + 15.5873, 0]
will force the complete rationalization. The documentation for Rationalize explains this.
Then Solve is able to find your solution.