Clinging to a 1-0 lead in the fifth, the White Sox put Jeff Keppinger aboard with two outs and Rios then yanked an 0-2 pitch down the left field line for the decisive blow.
Quintana (2-0) held the Indians to a pair of runs on four hits, walking a pair and striking out three over five full innings.
The left-hander exited in the sixth none out, two on and a run in. Nate Jones relieved and allowed a sacrifice fly to Mark Reynolds, but then fanned Nick Swisher and retired Ryan Raburn to work out of the jam.
Addison Reed collected his sixth save as the White Sox split a rain-shortened two-game series and snapped a four-game skid.
Cleveland starter Zach McAllister (2-0) absorbed the loss, surrendering three runs on five hits over 5 2/3 frames.