Arsenal beat Tottenham to keep alive their dreams of winning a first Premier League title in 20 years.