Hubert Hurkacz topped American Christian Harrison at the Delray Beach Open to reach his second career final.