Sunderland moved to within two points of the top two with a win over Portsmouth