The production company behind the film sued the 63-year-old actor for failing to complete the project on time and then failing to promote it properly, said the Hollywood Reporter.
The 7th Circuit court of appeals in Illinois ruled in favour of the "Batman" star, insisting there was little proof to suggest the director's actions led to the flop.
Judge David Hamilton said the plaintiffs needed to show some evidence their losses were caused by a contract breach, adding Keaton did in fact complete The Merry Gentleman.