Going to close this and answer myself.
Apparently, there is something wrong with the way that GFFormsModel::update_lead_field_value truncates fields. I was unable to get this to work.
Instead – I opted to use a direct WP insert (with if elseif etc…) – like so :
$csql = $wpdb->insert("wp_rg_lead_detail", array("id" => NULL,"lead_id" => $lead,"form_id" => $form,"field_number" => "154","value" => 'value'));
Not what I wanted to do, but hopefully this will save anyone some time and effort if they run into the same issue with this model.