That looks like UTF8 to me, misrepresented as Latin-1. Treat it as UTF-8, before processing it any further. It'll suddenly look a lot more manageable.
If you're using perl 5.8, then use the module Encode (the function decode, that would be my first guess) that comes with it.
And don't just strip accented characters, you're replacing one kind of error with another. I have no objection to dumbing down special quote-like characters, to plaing double quotes and apostrophes. (I'm guessing "Â " actually represents a nbsp, which you can safely replace with plain spaces.)