I've never worked with this kind of weird CSV format, but
both Text::xSV and Text::CSV_XS handle quoting better than Text::CVS, so you should probably try those.
It is not really that weird. Some of the application that is type-aware, do generate CSV file like this, especially database applications, adn Text::CSV is ready to handle this, both in and out.