The Indian ace made the cut at T-47th. Lahiri, who shot four-over 76 in the first round, began well to be two-under through 12 holes, before three bogeys pulled him down to one-over 73 and a total of five-over 149.
At that stage, he was in danger of missing the cut, which looked likely at four-over 148.
However, as conditions worsened with gusty winds going upwards 20-25 miles per hour, scores began to drop and the cut finally fell at six-over 150, giving Lahiri a chance to improve upon his previous best of T-49 achieved on his debut last year.
Between the two they experienced highs and lows - If McIlroy dropped from four-under to even par and then again rose to three-under by the finish, Spieth at one time was five clear of the field, but by the end was just one ahead of McIlroy.
Also Read
He said,"It was like swimming against the tide. I don't think I did much wrong. It was just that things didn't go my way. On the 13th approach, I caught the gust and it went over, and on the 15th, I played for the wind, but it went through and over. In both cases I ended with bogeys.
He added,"I putted better on the front nine, than the back nine. On 16 and 17 I missed something like eight-footers. I have not played badly, but I have been able to score better, missing all those 8-10 footers.
"Still with the wind blowing, I think the scoring is going to be tough, so let's if five-over makes it. I really want to stay on."
Lahiri, who dropped four shots in two holes - 16th and 17th - on the first day during his 76, had a great start on Friday, but once again had a rough finish.
A bogey on the fifth when he failed to get to the green in regulation saw him drop back. A great drive followed by a superb approach on 11th set him up for a five-foot birdie, which he duly nailed.
But for the second day running, he struggled at the finish with bogeys on 13th, 15th and 17th to finish at 73 and five-over for the tournament.
He dropped a double bogey on fifth, where very uncharacteristically he four-putted. Two more bogeys on ninth and 10th, and another two on 16th and 17th saw him come down the greased pole. Birdies on eighth and 15th limited the damage, but he slipped to four-under.
McIlroy starting from two-under added birdies on second and third to move to four-under. But from there, he slipped to one-under with a double on fourth and a bogey on fifth. That deteriorated to even par with another bogey on 11th.
Spieth is bidding to accomplish the rare feat of winning back-to-back Green Jackets, something done only three times - by Jack Nicklaus (1965-66), Nick Faldo (1989-1990) and Tiger Woods (2001-2002).
While the rule of Top-50 and ties would have seen only 56 players, Spieth's drop to four-under gave Bubba a new lease of life for the weekend, under the rule of "10 shots off the lead'.