The best source I've found for this is the chapter called "Writing Packages and Modules" in my favorite Perl book, Effective Perl Programming
by Hall and Schwartz. I recommend it highly (the chapter as well as the rest of the book).
Your list contains many of the same items in the chapter, with some differences. For example, I don't think it makes any reference to using version control, although that would be a logical and useful addition. (I'm not certain whether it refers to version control or not -- I don't have the book with me right now.) They do include more specifics on PAUSE and registration, along with URLs to use to check for newer information.