Shah had a century in his sights when lofting Harbhajan into the stands at long-on, but the bowler had his revenge in his following over when Dravid dived to take a fine catch at slip.
Shantry then struck to have James Taylor caught behind as he tried to drive, and Australian Andrew McDonald became another Shantry victim when a fine delivery saw him edge to second slip.
And the hosts' fine fielding exhibition reached another level one run later when Mahela Jayawardene took a blinding one-handed chance at slip off Chris Read to gift Upul Chandana his 100th one-day scalp.