Perhaps, each state has 2 at-large EVs (for its two senators) and then the other EVs are awarded to the winners of congressional districts. For example. The state of Oregon has 7 electoral votes. Obama wins the popular vote in Oregon therefore he gets 2 votes. But Romney wins district 3,4,5 and Obama takes districts 1 & 2. End result, Obama gets 4 EVs and Romney 3 EVs. This works well considering that one candidate takes the state at just around 51 percent and the other at 47.
Counterexample:
Obama
did win Virginia 51:47; thus, he'd receive 2 electors at-large.
However: Obama only won 4 districts while Romney won 7.
Eventually, Romney would have received 7 electors and Obama 6, even though Obama won the popular vote in Virginia.
Would that be fair?