Dan Evans ends his six-match losing streak with a win over Australia’s Alexei Popyrin to reach the Grand Prix Hassan II quarter-finals in Marrakech.