Why did Onan spill his seed?
Rashi (to 38:8): Because the child is called after the deceased, in which case it would not be considered his child, but that of Er. 1
Seforno: Since he would have to share the merit (of having children) with his brother - to whom Tamar had been betrothed - he did not want to benefit his brother with even half a Mitzvah.
Hadar Zekenim: He did not want to ruin (i.e. lose) Er's property. If he would father a child through Tamar, the child would inherit Er. 2
See Ramban and Sifsei Chachamim.
Why is there a Dagesh (dot) in the Lamed of [the first] Lo (in Seforim of Sefard - Minchas Shai)?
Ha'amek Davar: The Dagesh is for emphasis. Onan did not want the child's lineage to be traced to Er. Yehudah was adamant that it be traced to Er; perhaps the child should receive the Bechorah. Onan was angry, and did what he did.