Я не эксперт по движку MySQL, но я полагаю, что вам было бы лучше вообще сравнивать столбцы с реальными значениями даты, а не использовать имеющиеся у вас функции даты. Как только вы оберните столбец (столбцы) в функцию даты, индексы столбцов будут бесполезны.
У меня на этом компьютере нет движка MySQL для тестирования, но вот псевдокод:
SELECT
<column list>
FROM
My_Table
WHERE
my_date >= <get 1st of current month>(CURDATE()) AND
my_date < <get 1st if next month>(CURDATE())