World champion Pearson, winner of 15 of her 16 races last year and unbeaten in 2012, led until the final two hurdles before she was overhauled by American Kellie Wells who won in a time of 12.57 seconds. Pearson was two hundredths of a second behind.
"My coach told me to come here and do something today and I think I did it pretty well, I'll have to go and check with him," said Wells, who celebrated her victory with a dance on the track, to the delight of the capacity crowd.
"To beat somebody like Sally Pearson gives me a lot of confidence. The hurdles is tricky, if you negotiate them well you will do really good but if you make one mistake it can take you out of the race. So today was good," added Wells who had also pushed Pearson hard in the heat earlier in the day.
There was also a shock in the women's 100 metres with Nigerian Blessing Okagbare winning the race in 11.01 seconds, 0.02 ahead of world champion Carmelita Jeter.
Olympic gold medallist Shelly-Ann Fraser Pryce appeared to stumble slightly at the start and finished last, but was philosophical about her performance and refused to blame the wet weather.
"As an athlete you have to take precautionary measures and hope things get better because the Olympics are pretty much on us," she said.
"I don't think the weather was that bad. I hope that when I go on the track (at the Olympics) there'll be a lot of sunshine in my lane, Fraser Pryce told reporters with a smile.
Women's javelin world record holder and Olympic champion Barbora Spotakova of the Czech Republic came off second best to Britain's Goldie Sayers who won the event with a national record of 66.17 metres.
But the news was less good for Beijing silver medallist Phillips Idowu and high hurdler Tiffany Porter with both Britons suffering injury scares with a little under three weeks to the start of the athletics at the London Games.
Idowu pulled out of the triple jump competition with a back injury and Porter left the track in tears having finished last in her 100 hurdles heat in some discomfort.
"Hey guys, sorry to have to pull out of #ALGP (Aviva London Grand Prix), slight bit of muscle tightness. I will be fine in a day or 2," Idowu said on his Twitter account.
In the Londoner's absence American world champion Christian Taylor had a comfortable win with a best distance of 17.41 metres but he did not discount the challenge he faced from Idowu at the Olympics.
"Unfortunately Phillips pulled out but he'll be there I don't count him out at all. I knew (world record holder) Jonathan Edwards was here, that's a big idol for me and I wanted to put on a good show," the 22-year-old said.
"It was great preparation for the Olympics Games. I've been jumping in rain every competition so I figure I'm getting used to it."
France's Christophe Lemaitre won the men's 200 in a season's best time of 19.91 but said he would have to go faster to win an Olympic medal.
"I knew I could run under 20 seconds but to do that here is very good, two weeks before the Olympic Games. Now I'm very confident over this distance.
"For the Olympic Games I want to go even faster, because with (Usain) Bolt, (Yohan) Blake and the other sprinters I think that I must beat my personal best if I want to win a medal.
Britain's Christine Ohuruogu battled through a torrential downpour to overtake world gold medallist Amantle Montsho for victory in the women's 400 in 50.42.
It was in stark contrast to her 'appalling' performance - as the Olympic champion described it at the time - for last place at this meeting in 2011.
"I've done all the work so I'm happy that I can take something like that away. I knew I had a good chance, I saw her (Montsho) look back so then I thought, 'I've got you now'," said Ohuruogu, who was disqualified from the world championships last year for a false start.
Men's world champion Kirani James timed his race to perfection, surging to the front off the bend to win in 44.86.
Kenyan Silas Kiplagat burst to the front off the final bend to win the men's mile in 3:52.44 after the race had been subject to two false starts, which were put down to a technical problem.