Having programmed this sort of thing in thick client applications myself in the past, I'm afraid I have to disagree with you on the 'intelligence' issue. I agree that paragraphs are different to BR's, but at the end of the day, I look at it like this: run the editor in BR mode and tell me that the resulting output of bulleting is acceptable ? It is a complete mess, it doesn't work in any way that one might logically expect and our clients don't like it.
There is a way to resolve this, simply by enhancing the 'intelligence' of the current algorithm:
1) When the block of text highlighted by the user is extracted, check to see if it contains <P></P> and if so, do what you do now ie effectively convert each <P></P> into an <LI></LI> and then wrap a <UL></UL> around the whole lot.
2) If it doesn't contain <P></P>, then check for <BR>. If it doesn't contain any, then it is a single line bullet (probably the first line), so put <LI></LI> around it and then wrap it in <UL></UL>.
3) If it does contain <BR>, then treat each line ending in <BR> as a separate bullet line, remove the <BR> and wrap the line in <LI></LI> and the whole highlighted block in <UL></UL>.
If you do this, then it wouldn't matter whether the editor is in <P> or <BR> mode - it would operate sensibly in both situations and give the user what they expect.
Just because some other product doesn't make a sensible fist of this either doesn't mean you should copy it - this is about making it work and making it work in a way that makes sense to users. Currently, it does not.