Display a credibility score for the reviewer based on an algorithm when they joined, how many reviews they have done, and the last time they logged in. Too many suspicious reviews by people joining for one day, raving about a hotel or tour operator, and never to be seen again. The score should take these factors into account to alert your users of these yahoos. If a reviewer joins and posts once, the value of that review should diminish over time. The reviewer is not adding to the community and the suspiciousness of their review should increase. If a user is active seasonally (like winters only because that's when they travel), the algorithm should not decrease their reliability/credibility rating. Also show if the user is active (like has logged in the last 30-60 days). Although this system might not be perfect, it will be better then my current system of weeding through the fakes.
For example, I was suspicious on a tour operator once. They had a ton of 5 of 5 "one hit wonders" and people were talking about being in the port for the day on a cruise. None of the reviewers had any other reviews for other ports/ islands they visited. Google search found little outside of TA. I was very suspicious of the reviews...how can all 100 people give it 5/5. No one had an off day? I went with another company and asked the owner about this other tour operator who was a competitor...he said he never even heard of them. Somethings seemed fishy there..which is appropriate for the type of tour.
A simpler implementation would be to highlight reviews from people who posted more than 5 or 10 over a period of time. This would decrease the effectiveness of fudging the system. If not already, the scoring should weigh active TA member reviews higher then the "one post wonders".
Another benefit to this is you will encourage people to review and post more (just as forums do the same thing with assigning levels to number of posts.)