Terengganu fight back for win as Perlis upset Selangor