What improvements can I make to this table filtering jQuery Plugin?
You have:   

this._defaults = defaults;


This is redundant as the declaration :

var pluginName = "filterTable",
    defaults = {
    };


Can be accessed anywhere in your plugin.
Declare all variables that you use. This is a really good practice to have change lines like:

 $el = $(this.element);
 $table = $('#' + $el.data('filtertable'));


to:

var $el = $(this.element);
var $table = $('#' + $el.data('filtertable'));


JavaScript will let you use them without but you'll run into issues otherwise.
Variables need meaningful names so their lives don't seem meaningless and they despair. 


  Invective! Verb your expletive nouns!


$table.find('th').each(function (i)
{
    for (j in filterColumnNames)
    {
        if ($(this).text().trim() == filterColumnNames[j])
        {
             filterColumns.push(i + 1);
        }
    }
 });


What is i? index? columnIndex?
What is j? currentColumnName?