Macleod extended the lead with two more penalties before new Blues kicker Sweeney pulled one back from in front of the posts after an extended attack by the Welsh side.
The Blues stepped up their assaults as the clock ran down, Roberts sparking an attack that was squandered by replacement Robinson, who ignored an overlap to fire a badly-placed high kick to the corner.
The fly-half made amends in the last minute of normal time, though, he and Roberts having a hand in the move that found Mustoe on a midfield switch move, the replacement having the power to crash over for the crucial score.
To compound Sale's misery, Ripol suffered a broken arm in the closing seconds of the game.
Sale director of rugby Philippe Saint-Andre: "I'm very disappointed because we deserved to win. For the safety of the players, I couldn't pick guys who played on Wednesday against London Irish.
"We got back on Thursday at three o'clock in the morning and have got three games in nine days.
"Now we've lost three players for a few months - Cox, Bruno and Ripol - so it's been a bad four days.
"But I'm proud of the players because we had 12 guys from the academy out there who did well against a lot of quality Blues players.
"We competed well, and in the end of the game we maybe could have won."
Blues director of rugby Dai Young: "We were very poor, there's no excuses for that.
"Sale played extremely well and stopped us playing, were really competitive at the tackle area, really good defensively and didn't give us any tempo.
"The only real positive is that we came away with a win, we struggled to go beyond three or four phases."
Sale: Macleod; Kuadey, Keil, Tuilagi, Ripol; Wigglesworth, Leck; Faure, M Jones, Halsall, C Jones, Cockbain, White, D Tait, Fearns. Replacements: Royle for Kuadey (50), Kennedy for Tuilagi (68), Shaw for C Jones (75), Gaskell for White (68), Davies for D Tait (36). Not Used: O'Donnell, Holmes.
Sin Bin: M. Jones (36).
Cardiff Blues: Blair; Halfpenny, J Robinson, J Roberts, G Thomas; Sweeney, Rees; Yapp, T Thomas, Filise, Davies, Tito, A Powell, M Williams, Lewis. Replacements: Mustoe for Halfpenny (49), Shanklin for J Robinson (71), N Robinson for Sweeney (55), G Williams for T Thomas (80), G Powell for Filise (54), Jones for Davies (53), Sowden-Taylor for A Powell (55).
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.