If you digitized the game, disputes could be resolved with a Dutch auction.
It would work like this:
1) Every claim, passenger route, and line - every asset in the game potentially subject to dispute - would have a minimum price. This would be the claim or construction price printed on the map or card.
2) Players would roll for a dispute as normal. But now, winning the dispute no longer means winning the asset at the printed price. It means that if the auction expires with no bids, the dispute winner wins the asset at the printed price by default.
3) Now you have a Dutch auction. A clock is set for, say, five times the printed price (intentionally in excess of what anyone would rationally pay), and ticks down steadily, and quickly enough, to the printed price. Any disputant may click to buy and commits at the clicked price. Different web speed connections could be resolved by each computer feeding a click time-stamped at the local computer and the auction not ending until the server gets and adjudicates time stamps from computers belonging to the disputants (regardless of when the server gets the ping). If no one clicks, see 2).
4) Or for a simpler dispute resolution, disputants can submit individual bids (minimum: printed cost) and the claim goes to the high bidder at the high bid. Bid ties are broken by the dispute resolution dice results in 2).
This beats pure die rolling. You could do this face to face too, you'd just need a digital timer to execute 3) and slips of paper for 4).