The left-back joins the newly-promoted Premier League outfit for an undisclosed fee, putting pen to paper on a contract which will keep him at Craven Cottage until 2022, with the option of a further year on top of that.
"Playing against Fulham the last couple of years, the style of play has really stood out to me and it will suit me," Bryan told the club's official website.
"The opportunity to play in the Premier League is one you can't turn down as you may never get it again in your lifetime. I'm used to playing fast attacking football, so hopefully I can slot right in."
Owner Tony Khan added: "I'm pleased to announce that Fulham Football Club has signed Joe Bryan. Joe is a gifted young player, and we have seen first hand that he is a fierce competitor in our recent clashes against Bristol City in the Championship.
"He's a promising addition to the squad, and we are excited to welcome Joe to the club."
Bryan leaves Bristol City having made 230 appearances for his boyhood club, scoring 20 goals.