Silva hit a superb free-kick into the top corner past Peter Jehle after 39 minutes to put his side 4-0 up before being taken off at half-time and replaced by Iago Aspas.
It was his 33rd international goal, meaning he stays fourth on Spain’s list of all-time leading scorers, just five behind third-placed Fernando Torres.
It continues Silva’s remarkable form on the international stage. In his last 12 appearances for Spain, he has scored nine goals and assisted a further four.
The result means Julen Lopetegui’s side remain top of Group G, three points ahead of Italy - but, crucially, La Roja have a 17-goal advantage with just two games remaining.
Claudio Bravo captained Chile as they lost 1-0 to Bolivia in the Estadio Hernando Siles.
Juan Carlos Arce sealed the win from the penalty spot, ensuring Bolivia recorded their first win over Chile in any competition since 2000.
Chile sit sixth in the CONMEBOL World Cup qualifying table, a point behind Argentina in fifth.
Nicolas Otamendi was in action for La Albiceleste as they faced Venezuela in Buenos Aires.
The defender completed the full 90 minutes as the hosts came from behind, courtesy of a Rolf Feltscher own goal, to draw 1-1.
The result leaves Jorge Sampaoli’s men outside the automatic qualification places on goal difference with two games remaining.
Meanwhile, Fernandinho started as Brazil drew 1-1 with Colombia.
Willian gave Brazil the lead on the stroke of half-time, but Radamel Falcao equalised after 56 minutes.
City’s Gabriel Jesus also featured, replacing Liverpool forward Roberto Firmino on the hour mark as Brazil went in search of an elusive winner.
Brazil, already qualified for Russia 2018, are now 10 points clear of second-placed Uruguay in the qualifying table.
Meanwhile, Argentina dropped vital points against bottom of the group Venezuela who earned a surprise 1-1 draw in Buenos Aires.
Nicolas Otamendi played the full 90 minutes, picking up a yellow card for his troubles, and Sergio Aguero was again an unused sub,