Why is MySQL using this index? Can I force it to use another?
No index will help with the WHERE clause -- part has OR, part has LIKE with an initial wild card.
So, the only hope for optimizing is to work on the ORDER BY.  However, that is risky -- it might finish after looking at 15 rows, or it might look at the entire table without finding 15 rows.  (Or some amount in between).
A single OR can usually be turned into UNION to good advantage.  But 2 ORs is too messy to contemplate.