How to detect if field support multi values?
I believe the 'cardinality' is stored at the field (base) and not the field instance.  You should be able to use field_info_field to retrieve that information.