What causes fingerprints to form and why is the pattern formed unique?
I would say genetic diversity is the primary reason which results in other reasons that you are looking for. At the lowest level, random crossing over at prophase I, random separation of homologous chromosomes at anaphase I, random separation of sister chromatids at anaphase II, and random fertilization: one sperm fertilizes one egg randomly. 

The skin is developed from ectoderm so need to look at the formation of embryonic disc and specifically to the genesis of germ layers: ectoderm.

However, I would stick to the primary reasons, since it is extremely difficult to visualize the given formation - actually we do not have resources for it at the moment.



Very good question the last part. I have an intuition that skin develops randomly because of the above reasons. You would also need a lot of memory to make identical skins for twins! It has not been useful to have identical fingerprints between two people so evolution has not resulted into it.

Feeling surfaces and gripping are movements - not much space taken things, in contrast to the memory needed in storing the exact surfaces of skin from one generation to another. - Learning is a way to save resources here and it is a lot more efficient and than storing static information to species from one generation to another.