https://news.ycombinator.com/item?id=11934434
I also found this book helpful, when I was starting out with experience with imperative languages and thinking iteratively:
https://www.amazon.com/Thinking-Recursively-Java-Eric-Robert...
It is the most lucid explanation of recursion using the story-telling format.
After working through this chapter, I have never failed to write/understand programs using recursion.
Recursion is a very simple concept and really doubt you will find a whole book dedicated to it.
Checkout Computer Systems: A programmers approach
It explains what is happening in memory when you call a function.
I haven't read any books about recursion itself however, only books that teach recursion amongst other topics.