Italian Basso came home second ahead of compatriot and team-mate Vincenzo Nibali on the 195km run from Brescia to Aprica, which took in the infamous climb up the Passo del Mortirolo.
Previous maglia rosa David Arroyo (Caisse d'Epargne) was among the chasing pack and crossed the line sixth, but the Spaniard's gutsy ride was not enough to prevent surrendering the overall race lead to Basso, who now takes a 51 second advantage into Saturday's penultimate stage.
Nibali's excellent performance saw him move up to third on the general classification, 2mins 30secs behind Basso and 1min 39secs behind Arroyo, but ahead of Scarponi in fourth.
Conceivably, any one of those four riders could claim overall victory and the final two stages - Saturday's mountain ride between Bormio and Passo and Sunday's time trial in Verona - promise plenty more thrills and spills.
Basso, once again abetted by his Liquigas team-mates, proved too strong on one of the most demanding stages of this year's race, including the 12.8km climb up the Mortirolo which boasted a gradient of 18 per cent at one point.
To make matters worse, a rain shower at the summit made for a tricky descent, yet Basso, sharing the load with Nibali and Scarponi, make light work of it to keep Arroyo and the chasing pack at bay.
On more than one occasion, Arroyo looked beaten by the demands of the mountain but each time he dug deep and eventually emerged with his chances of overall victory intact, if seriously diminished.
Scarponi was rewarded for his hard work with the nod from Basso and Nibali to cross the line first, while fellow contenders Cadel Evans (BMC), Carlos Sastre (Cervelo) and Alexandre Vinokourov (Astana) came home alongside Arroyo in the chasing group.
Giro d'Italia every day 1.45pm LIVE on British Eurosport 2 (Sky 411 / Virgin 525) & on the Eurosport Player.