Второй вариант.
Вы там в самом начале написали условие получения наград - и/или
Это предполагает, что за задание может выдаваться несколько наград (диплом и мерч к примеру).
Значит вам нужна связь между таблицами задач и наград "многие-ко-многим" с промежуточной связной таблицей.
Учитывая, что награды бывают разных типов, то имеет смысл определить для каждого типа свою таблицу и организовать полиморфную связь.
таблица tasks
id | other_fileds...
таблица rewards_diplomas
id | other_fields...
таблица rewards_currencies
id | other_fields...
и т.д.
reward_task - связная таблица
task_id | reward_type | reward_id
task_id - идентификатор задачи
reward_type - тип награды (diploma, currency..)
reward_id - идентификатор награды из соответствующей таблицы
Из плюсов - расширяемость. Из минусов - усложнение запросов выборки и невозможность использования внешних ключей и ограничений.