In fact I'm not sure the problem has ever been "solved" - raw sample size of reviews is helpful, but nowhere near eliminates these biases.
How could it even be improved further in theory? I think you'd at least have to incorporate the number of total products sold into the review rating. If there were 10 terrible reviews on a product with 1,000,000 sold, that means something very different than one with 20 sold.
Baseline though, dealing with people, it will probably never be perfect unless the reviewers have "skin in the game". People with positive experiences need some incentive to leave reviews that is as compelling as the negative experience. Lots of Amazon sellers offer some kind of free product or coupon in their follow-up emails - maybe that works?