The midfielder’s short-term contract with Blackpool was up at the end of last season, and he moves to Craven Cottage for no fee.
O’Hara is Fulham’s fifth summer signing following deals for Ben Pringle, Andy Lonergan, Tom Cairney and Jazz Richards.
He told the club website: “I’m absolutely delighted. I’ve had a couple of weeks training with the team and I really felt I wanted to get to this club.
“I’ve loved it, I’ve worked hard and now it’s paid off. I have to thank the manager for giving me the opportunity.”
O’Hara, 28, began his career at Tottenham and cost Wolves £5m in 2011 only to lose his place when Kenny Jackett took charge at Molineux.