World No. 1 Rafael Nadal battled past Grigor Dimitrov 6-3, 4-6, 6-1 on Saturday to reach the final of the China Open in Beijing.