Modifying the built-in behavior of ajax tag type-ahead functionality of WordPress

Very difficult. The value is hard coded in wp-admin/js/post.js. See wp-admin/js/post.dev.js tagBox.init() for more readable code:

$(this).suggest( ajaxurl + '?action=ajax-tag-search&tax=' + tax, 
{ 
    delay: 500, minchars: 2, multiple: true, multipleSep: postL10n.comma + ' ' 
} );

The only solution I can see: Unregister the script with the handle 'post' (see wp-includes/script-loader.php) and register a custom copy where you change the minchars value.