Unclear to me as well, as I understand it the sentence translates as "He writes for me a book". If I were to want to say "he writes me a book" i would write "anh ay viet toi mot cuon sach". However I don't know if this is correct or a product of my informal learning of the language, can anyone clarify?
In the tips and notes, it's said that "cho" means "to give" but can also work as the preposition "to". This reminds me of "给(gei, to give)" in Chinese. They seem to be used exactly the same way.
So, I believe this sentence means "He writes a book for me".
It would be easier to understand this (why a word meaning "to give" is used to mean "for" or "to") if you read it this way: he writes a book to give it to me (though "he" probably wouldn't actually give it to "me", but the book is written for "me").
I don't think I'd ever say "He writes me a book" unless I were commenting on some extremely lengthy letter. "For me" could mean either "to give to me" or "at my request". "He writes me a letter" and "He writes a letter to me" are nearly interchangeable. "He writes a letter for me" would most likely mean "on my behalf".