Anything less than a victory would have seen Portugal forced to go through a two-legged playoff next month, but instead they top Group B on goal difference above the Swiss, who will drop into the playoffs despite winning all nine of their previous qualifiers.
Portugal took the lead in the 41st minute when Eliseu curled a dangerous cross into the box intended for Joao Mario, who collided with Switzerland goalkeeper Yann Sommer and Johan Djourou. The ball came off the defender and crossed the line for an own goal.
And in the 57th minute Portugal cemented their place in Russia when Bernardo Silva sent a pass through the six-yard box that Andre Silva controlled before putting the ball into the net.
After scoring 15 times in qualifying to this point, Ronaldo had a quiet game on Tuesday -- even being denied by Sommer one-on-one in the second half -- and finished one goal behind Poland's Robert Lewandowski for the most in the European campaign.