How do you make Settlers of Catan work well for 2 players? (Problems and play-tested solution described, alternatives requested)
We've played many enjoyable games with the following system that does nothing to deal with the loss of trading, but handles the other issues raised above quite well:




Change hex setup to barbell shape (see picture)
3 of each resource hex (ores always placed as shown with 3-8-11,
rest randomized)
8 randomized ports (5 2:1, 3 3:1)
A set of randomized numbers on either side of barbell (set 1:
4,5,8,9,10,11) (set 2: 2,3,5,6,9,10)
12 victory points
7's get rerolled for the first 6 rounds of play (we call this
"Robber Delay")
Use Robber Equalizer rule:


The Robber Equalizer rule is our slow-the-leader mechanism, and it works by making rolls of 7 less and less likely to stick the further behind you are. First determine how far behind you are by counting up victory points in the normal manner for settlements and cities (but don't include longest road or largest army). Then add 1/3 for each played soldier, each road link, and each unplayed development card.

A 7 rolled by someone who is behind always counts. Each time a 7 is rolled by the player who is ahead, reroll the dice and the 7 sticks if the roll is high enough according to the chart - for example if you're ahead by 1 and 2/3, you need to roll 6 or higher for the robber to stick:

Point  Minimum
Diff.  Roll
1/3    2
2/3    3
1      4
1 1/3  5
1 2/3  6
2      7
2 1/3  8
2 2/3  9
3      10
3 1/3  11
3 2/3  12


If the robber does not stick, then then the dice must be rerolled, and only a number other than 7 will count.

We've played dozens of games with these rules and the games are fairly balanced thanks to the Robber Equalizer rule, though the rule does lead to not being so afraid about having to discard half your hand later in the game as the 7 may not stick, which can be an advantage to the player in the lead.