Awarding electoral votes by congressional district could result in third party candidates winning electoral votes that would deny either major party candidate the necessary majority vote of electors and throw the process into Congress to decide.
Because there are generally more close votes on district levels than states as whole, district elections increase the opportunity for error. The larger the voting base, the less opportunity there is for an especially close vote.
Also, a second-place candidate could still win the White House without winning the national popular vote.
A national popular vote is the way to make every person's vote equal and matter to their candidate.