optimize table

Even after nullifying the blob content the disk utilization is not going down it is in fact increasing.

want to know if optimize table is the right solution for this issue?

Do we need to execute flush tables after optimize table ? will optimize table work properly without flush tables ?

the table engine is InnoDB and innodb_file_per_table is true.

With disk utilization you mean i/o or data size? Data size will only decrease if you rebuild the table, i.e. with ALTER TABLE engine=InnoDB;