Igor de Camargo gave Gladbach the lead in the 49th minute but Daniel Caligiuri equalised from the spot in the 77th minute.
The draw leaves Freiburg two points behind their opponents in the Bundesliga table.
The first chance went to the visitors in the 17th minute but Max Kruse fired wide from the edge of the box.
Freiburg went close again three minutes later with Kruse crossing from the right to the far post, but Cedrick Makiadi failed to get his shot past Gladbach goalkeeper Marc-Andre ter Stegen.
Gladbach finally threatened after 35 minutes from a set-piece, Freiburg keeper Oliver Baumann making a superb save to keep out Alvaro Dominguez's shot from Juan Arango's corner.
The hosts took the lead four minutes after the re-start, though, as Oscar Wendt crossed from the left side to De Camargo, who had an easy tap-in from four yards out.
Gladbach had a couple of chances to double their advantage but Lukas Rupp fired wide from six yards after a fine cross from Patrick Herrmann in the 55th minute, and Rupp's drive from distance also went wide 10 minutes later.
Freiburg withstood the pressure and had a chance in the 69th minute but Caligiuri's header was inches past the left post.
The visitors were back on terms 13 minutes from time, though, as Oliver Sorg was brought down by Arango with Caligiuri firing the resulting penalty low into the net.
Caligiuri was close again just three minutes later but this time directed his effort wide.