To your points:
-Since treelist has a page size (which is counting at the same time all items, at all levels) it is expected that when a node is expanded and the items in it exceed the page size, a second page to be added. Additionally, this exact way of counting and displaying the dataitems was chosen above the other options because a lot of customers required such paging in RadGrid but it was not possible to implement there. Different style of paging is not currently planned to be introduced, however, you can submit a feature request and if other customers request it, too, it will be considered for implementation.
-This limitation is caused by the fact that currently RadTreeList does not support data editing operations but it will in Q1 2011, as you can see in the RadControls for ASP.NET AJAX Roadmap
-I may be misunderstanding you but the current load mode of the treelist control is comparable to RadGrid's ServerOnDemand. You indeed have to pass the whole datasource to the control, since for self-referencing data, in order for the root, parent and child items to be structured, all items in the datasource should be resolved. However, a dataitem is not created until it needs to be displayed in the control. In other words, child items are created when their parent is expanded.
I hope this gives a more clear view on things. Let us know if you have further questions.
the Telerik team