Some question about block and block chain.....really confuse me!
The cost to abort current work is essentially zero. If you haven't found a block yet, you haven't accomplished anything you care about. So you can restart to include new transactions at near zero cost. You don't have to restart if you don't want to. Miners can either try to get new transactions into blocks as soon as possible or not bother.

In the future, people will probably work harder to get new transactions into blocks as soon as possible. Right now, the 25 BTC block reward dwarfs any transaction fees. But in the future, getting as many transaction fees as possible may be worth extra effort.

If two blocks are broadcast at about the same time, there's no good way to know which will ultimately be accepted. You have to wait to see which one gets confirmations. Everyone wants to mine on the longest chain (to increase the chances they get to keep their block reward), so as soon as one gets even a slight advantage, its advantage should grow.