That’s alot of image’s, personally first I’d go through those and see what can’t be replaced by a much more reusable piece of css.
As for how to divide your sprites up depends on how big a single sprite file would be, and how many other requests are been made for other files when the site loads. If the file would exceed more than say more than 90-100k i’d divide it up a bit. If there are lots of other requests though it might be wiser to stick with a single file. Also consider what is the likely connection it will be downloaded on, if its always gonna be high speed broadband large filer no worries.
Question 2: Well see above but basically its a question of number of requests vs file size. Oh and don’t forget to lossesly optimise your images get them as a small as you can.
Question 3: is a little bit vauge, but assuming you have one div with a background image, and then the other div with the background image, its just a matter of overlaying them with positioning.