Cairney's previous deal had been due to expire this summer, meaning that he was free to discuss terms with foreign clubs from January 1.
However, Fulham have triggered a one-year extension clause in the 32-year-old's deal that will see him reach 10 years of service with the Cottagers, having initially joined in 2015.
"It means everything to me to extend my contract. 10 years is a hell of a long time in football, a very rare thing," Cairney told the club's official website.
"I said from quite early on that Fulham feels like home - a lot of players say that and then move on, but I feel like it's obvious that I meant it as I'll still be here 10 years later.
"I just want to thank everyone for the support over the years - the Fulham fans have been incredible with me, and I'll just look to keep repaying them."
Vice-chairman Tony Khan added: "I don't think that the importance of Tom Cairney joining Fulham in 2015 can be underestimated in terms of our recent history.
"He has been a great signing for the club whose contribution over the years has led to so many memorable successes on the pitch.
"TC's new contract will also take him into a special group of players that have reached a decade with Fulham, and I'm delighted for him and his family.
"He's a fantastic person who I have much admiration for, and it is timely that this announcement comes just two days after our victory over Arsenal in which Tom was named Player of the Match live on Sky TV."
Cairney has been a key part of Marco Silva's side so far this season, making 22 appearances across all competitions to take his overall tally for the club up to 304.
In that time, the midfielder has scored 45 goals and created another 35, helping Fulham to earn three promotions from the Championship.
Cairney becomes the second long-serving Fulham player to extend his stay with the club in recent days, after Tim Ream also committed his future to the West Londoners.