It happens because client context CamlQuery object accepts not only query but the whole view. That is why you need to provide View xml. You can find view element structure here.
Probably it returned 15 items initially because you view xml was incorrect. I guess it returned all items in the list. I've seen this behavior before when working with server object model - if your caml query has incorrect structure or any mistakes then all list items are returned.