I still say partition.It may cause problems in the short run but only real option to bring stability and democracy,is to first give the people their own national states.Since Shiias and Sunnis still mostly come from same ethnics groups i would split Iraq in two parts Kurdistan and Iraq.
We can do a little comparison by thinking what kind of Europe would we be living if the Empires of Europe would not have been splitted to National states.Ofcourse it creates problems first,no births are painless but i think in the long run the Middle east have to go through the same process.