In the 12th minute, Nathan Chalobah broke into the box and cleverly backheeled the ball to Danny Graham, but the forward somehow contrived to miss from just three yards out.
With 20 minutes played, James Hayter sent a delicate chip towards goal, but Luke Steele acrobatically tipped the cheeky effort over the bar.
Chalobah was forced off through injury in the 24th minute, with Jacob Butterfield replacing the loanee.
Graham then made amends for his earlier miss when he put the visitors ahead in the 31st minute, and Emmanuel Ledesma struck the bar just a minute later.
Hayter equalised six minutes later, but the home side were level for just two minutes as Ledesma smashed the ball home from close range, and Lee Tomlin raced away and finished smartly two minutes before half time to give Boro a two-goal cushion.