Glad you are looking at a cruise, but to answer your questions, really depends on what you mean by best. If by best time to cruise, you mean the least expensive, it's when kids are in school and not around holiday times. September, the first half of December and January are some of the more inexpensive times. After Easter and before schools get out are also inexpensive. If you are asking, when the best weather is, then I'd skip the bahamas/caribbean in August and September and the water tend to be cool (or can be hit/miss) from November to March.
As for the best decks, again, personal preference. Best for not getting seasick, they say lower decks and mid ship. Best for being near things, that would be the upper decks, closer to the pool deck (or we like deck 2 because it is near restaurants, lobby, gangway for most ports, etc.)
If you need a passport depends on your cruise itnerary. If you are going on a closed loop (starting and ending in the same US port), then you generally don't need a passport -- a certified government issued birth certificate along with government issued photo id is usually enough.