The 25-year-old right-back made 37 appearances for Tottenham and had brief loan spells at Southend, QPR and Watford before joining Birmingham in June 2006.
Kelly, who also had a spell on loan at Stoke last season, said: "I'm happy that my transfer to Fulham has been finalised today and look forward to meeting with the rest of the team for pre-season preparations in July.
"I have spoken to the manager about plans for next season and I'm delighted to have joined a progressive club which has recently achieved its highest ever top-flight finish. I am also looking forward to being part of a strong squad for next season's Premier League and Europa League competitions."
Fulham boss Roy Hodgson added on the club's official website: "I am delighted that Stephen has become our first signing of the summer transfer window. He is a talented young full-back with experience of playing in the Premier League as well as competing at international level.
"He will be a useful addition as we look to improve our squad ahead of the start of next season and I am hopeful that we will be able to announce further additions in the coming weeks."