Can a book cipher be cracked without key?
First things first, finding the key (book) is not impossible, but just tough. If someone, like Google for example, has scanned millions of books into digital formats then it won't take long for them to figure out which book (simply try decrypting the first sentence only until the key is found, should be feasible for a mainframe).

Also, there is a lack of randomness. As the book you choose might not have random sequences the substitution will not decorrelate anything, which is another drawback. The best way to improve this is by choosing random references for each character by using a random number generator, which is tedious.