David Flanagan writes coherently and clearly; more so than most technical writers. His books are great!
Are these really flaws?
Re: Flaw #1 (lack of exercises) - it's not a textbook. Please read p. ix: "[The Ruby Programming Language] aims to document the Ruby language comprehensively but without the formality of a language specification."
Although it's loosely modeled after "The C programming language," (which has exercises) pick up a textbook if you want exercises, that's not a flaw in this book IMHO.
For exercises, I usually just type "irb" on a shell prompt and try out any example I want.
Re: Flaw #2 (lack of big project) - see p. ix again my friend, but there is some info starting on p. 252: "Ruby programs may be broken up into multiple files, and the most natural way to partition a program is to place each nontrivial class or module into a separate file. These separate files can then be reassembled into a single program...using require or load."
Start by writing a script all in one file (Ruby is a scripting language, so it just executes from top to bottom with the exception of BEGIN and END blocks and the at_exit block, see p. 39 under the heading 'Program Execution.'), then as the script becomes more complex gradually split it to multiple modules.
Re: Flaw #3 (dry material) - The advanced sections even warn you that they are advanced, see p. 266: "Note that [Chapter 8: Reflection and Metaprogramming] covers advanced topics. You can be a productive Ruby programmer without ever reading this chapter. You may find it helpful to read the remaining chapters of this book first, and then return to this chapter."
My advice is focus on writing working Ruby programs first before tackling any functional programming or metaprogramming techniques (although when you're jumping to Rails right away you'll find you'll be using metaprogramming features, at times without knowing it).
Keep it simple, don't just use the whiz-bang features for their own sake.
Final tip: Use this book as a reference also - one is never really "done" reading it. Even more so with C++ and Perl books!