It looked as though Evans was heading for another scalp when he took the first set, but 35-year-old Haas recovered to set up a last two clash with Marin Cilic, who overcame qualifier Bjorn Phau 6-3 6-4.
Victory for Haas in the final would bring up 550 career wins.
Gasquet won 7-6(6) 7-6(4) while Monfils came through 6-2 3-6 6-1 against sixth seed Jarkko Nieminen.
“It was a big match for me and an important win,” said Gasquet.
“It’s the best player I defeated so far and I am satisfied in the way I did it today. It’s the first week with my coach Sergi Bruguera, so I wanted to do well here.”
ATP Zagreb - Semi-finals
1-Tommy Haas (Germany) beat Daniel Evans (Britain) 5-7 6-4 6-3
5-Marin Cilic (Croatia) beat Bjoern Phau (Germany) 6-3 6-4
ATP Montpellier - Semi-finals
1-Richard Gasquet (France) beat 3-Jerzy Janowicz (Poland) 7-6(6) 7-6(4)
5-Gael Monfils (France) beat 6-Jarkko Nieminen (Finland) 6-2 3-6 6-1
- Sports & Recreation
- Richard Gasquet
- Gael Monfils
- Marin Cilic
- Jerzy Janowicz
- Daniel Evans