It was a good start from the hosts with chances from Martin Olsson and Jordan Ayew before Boro had appeals for a penalty turned down in a fast opening 13 minutes. A good chance for Tom Carroll followed but a goal failed to materialise.
The Teesside club picked up their act in the second period, with Álvaro Negredo having two great chances in the opening stages of the second period. Gylfi Sigurðsson came close but Rudy Gestede's big miss rounded off an entertaining but frustrating afternoon in Wales.
Starting off well
It was all set up to be a six-pointer at the Liberty Stadium, and it Paul Clement's side who started brightest as they looked to distance themselves from the relegation zone.
Their first opportunity came seven minutes in, as Olsson did well to get around Antonio Barragán. The Swede decided to take a shot on Victor Valdés' goal, but the tight angle proved too much as it went wide of the Spaniard's post.
Ayew came very close to finding his first goal since his January arrival at the Swans moments later, he did well to cut in from the left-hand side. It was a great effort as it looked to curl into the top-right but Valdés did well to parry it away.
Having a punt
Boro had hardly been involved in the opening proceedings in what was a crucial clash for the Teesside club, and thought they should have been handed a penalty 13 minutes in.
Gastón Ramírez showed excellent ability as he turned Kyle Naughton before squaring it to Negredo, Alfie Mawson was across to block the effort and referee Robert Madley waved away the subsequent penalty appeals.
The tie died down from there in terms of opportunities, but both sides played well in what was open first period.
Swansea had one more chance in their locker before the break. It was an excellent effort from Carroll as he received the ball from Leroy Fer 30 yards out. The youngster decided to let rip and his venomous half-volley sped towards goal but glanced past Valdés' post.
Coming into it more and more
Interim manager Steve Agnew didn't need to reiterate the importance of three points to Boro's survival push as they headed out for the second period, but there was certainly a change in performance at the start of the half.
Negredo did well in the 52nd minute with a great piece of trickery, as he freed up some space with his dummy pass to Adama Traoré. The Spaniard then let rip as his effort managed to get beyond Olsson but whistled past Łukasz Fabiański's post.
Clement will have felt his side should have been ahead moments later, as Olsson played dangerously excellent ball across the face but Ayew lacked the yard of pace to get on the end of it and turn it home.
It was proving end-to-end stuff as the Teesside outfit went up the other end and had a great opportunity. Play was waved on after Traoré was fouled by Mawson, with the winger carrying on before Adam Clayton at the back post with his cross. He pegged back across the area for Negredo who looked to dink it over Fabiański but the Pole did well to save.
Looking to make that difference
Sigurðsson has once again been crucial for the Swans this season, but hardly been in the contest thus far but managed to produce an excellent save out of Valdés.
The Iceland international did well to curl an ferocious effort towards goal in the 64th minute, it looked destined to nestle in the net but Valdés did brilliantly to save.
Clement's side were beginning to turn up the heat as they looked for their winner as the contest entered its final stages. Naughton did well to put a good ball into the area where Mawson was waiting in the wings, but his run to the near post and subsequent header wasn't rewarded as it curled over the bar.
The final chance of the afternoon fell to the visitors, and the traveling contingent will be scratching how Gestede hadn't stole all three points right at the death.
There was final punt into the area in extra-time which had missed the boot of Negredo, but it fell beautifully for the striker looking for his second goal in as many games but he somehow headed it wide of the post - leaving his team still in trouble at the bottom.