Justin Rose piled the pressure on leader Marc Leishman with a superb final-round charge at the BMW Championship, but he had to settle for second.