Ferrari protege Giovinazzi was vying with Sauber incumbent Marcus Ericsson for the seat alongside the 2007 F1 world champion.
A Sauber statement said the decision to take 24-year-old Italian Giovinazzi fitted the team's "tradition of discovering and nurturing young talents" and "is particularly significant in the scope of the project" with title sponsor Alfa Romeo.
"This is a dream come true, and it is a great pleasure to have the chance to race for this team," said Giovinazzi.
"As an Italian, it is a huge honour for me to represent a brand as iconic and successful as Alfa Romeo in our sport."
Giovinazzi, who was runner-up to 2019 Red Bull Racing driver Pierre Gasly in the '16 GP2 title race, raced for Sauber twice last season as stand-in for the injured Pascal Wehrlein.
This year he is carrying out a programme of Friday grand prix practice outings with the team, and has also tested for both Haas and Ferrari.
His 2019 F1 deal will be his first full-time racing chance since his GP2 campaign two years ago.
Ferrari is able to nominate one driver for Sauber through its technical partnership and Alfa Romeo tie-up, and placed Raikkonen's 2019 replacement Charles Leclerc there this season.
Team principal Frederic Vasseur intimated that Giovinazzi had taken the 'Ferrari' seat at Sauber, and that Raikkonen's deal was independent of Maranello.
"We first signed Kimi Raikkonen, an extremely experienced driver who will contribute to the development of our car and will accelerate the progress of our team as a whole," said Vasseur.
"Together with Alfa Romeo, we are delighted to welcome Antonio Giovinazzi, who will take the place of Charles Leclerc.
"We have already had the opportunity to work with him in the past and he has proven to have great potential."
Ericsson departs the Sauber race line-up after four seasons, having joined from Caterham in 2015.
He had initially been thought likely to stay on due to his links with the investors behind the team.
Sauber said Ericsson would be kept on in the role of "third driver and brand ambassador" alongside Raikkonen and Giovinazzi.