Будет ли использоваться индекс в запросе вида WHERE `field1` LIKE '_aa_a_'?
Вместо сотни вопросов один ответ: попробуйте и узнаете online sql editor
Нет разницы, один или 10. 
Для простоты индекс можно рассматривать как отсортированный список. 
Если список учеников в классном журнале отсортирован по алфавиту, то вы довольно быстро найдёте нужного.
А теперь представьте, что вы по тому же самому списку ищете фамилию, на зная первой буквы.  И тут уже без разницы, сколько букв мы не знаем. И одной достаточно, чтобы полностью поломать поиск. 

Точно такие же проблемы будут и у базы данных. Вместо отсортированного списка с выходом сразу на нужную букву,  придётся тупо искать перебором. 

Полнотекстовый индекс также не является чем-то особенным в этом плане. Он устроен по совершенно тупому принципу: грубо говоря, БД берёт текст из колонки, и разбивает его на слова. И строит по этим словам снова точно такой же отсортированный список, с указанием, в каких строках это слово используется. То есть когда мы делаем запрос с match, то mysql находит искомое слово в индексе, и возвращает из него все строки.

И точно так же полнотекстовый индекс не работает, если поставить звёздочку спереди. Мануал так и говорит:
Words match if they begin with the word preceding the * operator
То есть звездочка работает только если поставить её в конце слова. 
match against ('класс*') найдёт слово "классный", а '*accный' его уже не найдёт. 
То есть БД тебе сразу говорит, что для такого поиска полнотекстовый индекс будет бесполезен.