After watching a six-minute clip from NESN at mlb.com (here), I think that the fan did intentionally touch Sheffield, though not very hard, almost slyly, knowing he was on camera. It's awfully hard to come up with another motive for his movements. There is no way he was trying to reach for the baseball -- and he wasn't trying to prevent his friend from reaching for it either.
It was interesting that as Sheffield is turning to throw the ball back to the infield, after taking a swing at the fan, the guy in the red jacket is cheering and pumping his fist in celebration. He isn't surprised at all by Sheffield's reaction. ... Also a guy in the second row (on the left side of the screen, behind the two women in the front row) flicks his cup of beer on Sheffield as the right fielder tries to punch the fan.
Lost in all of this is that the Red Sox won the game despite some of the worst home-plate umpiring you'll ever see. Edgar Renteria drove in three runs with a home run and a double, Varitek also drove in three with a triple and home run, Johnny Damon scored twice, and Jay Payton hit a two-run homer. ... Keith Foulke struggled in the ninth, loading the bases on a double and two walks, throwing 34 pitches (he threw 53 in his two innings of work).