I would suggest
Remembering the Kanji. However, it doesn't teach the readings - there is a second volume for that (which I haven't used). I was personally able to complete it in about 6 weeks (50 or so a day), though your mileage may vary depending on your free time and whether you can stand the tediousness. There is an unofficial companion website called
Reviewing the Kanji where you can enter your own mnemonics for each kanji or view those submitted by others (there's also a link to a sample of the book). The free
Anki SRS flashcard program comes with a Remembering the Kanji deck with links on each card to the corresponding entry on Reviewing the Kanji so you can quickly review your chosen mnemonic if you forget it.
What I did first was to open the RTK deck that comes with Anki and suspend all the cards (do this just once when you start), and choose the "Show new cards before reviews" option in Study Options.
Then, the daily routine I used was:
1. Review the expired cards in Anki.
2. Using the book and the mnemonic database on the website, work through 20-25 kanji (or whatever you're comfortable with).
3. Take a short break.
4. Unsuspend those cards in Anki, then review them.
5. Repeat 2-4.
It's important to keep reviewing once a day even after completing the book and to
write the kanji (once) when you review them. At this point I usually get around 85-95% correct when I review, which I have heard from others as well (but you might get a bit less at first).
I should also warn you not to trust the stroke orders presented in the book, which for some reason are often wrong.
Yamasa Online Kanji Dictionary is a good place to get animated stroke diagrams.