If I C-c on some other program (lets say a terminal, or a web browser) and then C-v into Emacs, autopair sometimes creates extra parentheses or brackets that I don't want. How do I restrict this from happening when I am copy pasting external text to Emacs? My relavent lines in my init.el file are:
(require 'autopair)
(autopair-global-mode 1)
(setq autopair-autowrap t)
If I understand correctly, you're pasting into an Emacs running inside a terminal emulator. In that case, the paste really sends the pasted chars as if they were key-presses, so weird things can happen (e.g. when pasting into a Dired buffer).
For what it's worth, Emacs-25 supports "bracketed paste", which is a special functionality of "recent" xterms in which those terminals send pasted text surrounded with special escape sequences, so Emacs can know that it's a paste.
In other words, this problem should be fixed in Emacs-25.