1. I've read seven or eight Perl books in the past year, and they're all within arm's reach. My memory's just photographic enough that I can sometimes recall the page I've read something on previously. In addition, once you've used perldoc to look up a function or a FAQ a few times, you'll remember it when you need it next time.
in reply to How DO those monks do it?
Besides that, I'm not afraid to do a little testing on my own and figure things out. That comes with experience.
2. I tend to go for the challenging or interesting parts first, doing a bit of pseudocode in comments just to get the algorithm and flow right in my head. Then I fill in the blank spaces, test, fix bugs, test, and keep up that cycle.
I tend not to do much benchmarking and optimizing as a separate step. Sometimes you can get a feel for how code works, again with experience.
If I were you, I'd get the Perl Cookbook and read through the FAQ a couple of times. Reading the function descriptions in Programming Perl wouldn't hurt, either. (You have to know what tools you have and you have to know how to pick the right tool, so you need to learn both at once.)