This is actually another weird sentence in Portuguese, it is not common in everyday life.
One would rather say "eu faço almoço" or "eu faço o almoço", or even "eu preparo almoço/o almoço".
"Eu cozinho almoço" is a strange sentence in Portuguese and in fact it sounds very foreign.
Now, if you want to say "I cook vegetables" in Portuguese, it is just fine to say "Eu cozinho verduras".
Simply put, in Portuguese you usually cook things (rice, beans, vegetables), not meals (lunch, dinner) - you "make" (faz) or "prepare" (prepara) meals.
"eu cozinho almoço" can be used if your profession is to cook lunch, or if you cook the lunch everyday, while "eu cozinho o almoço" is used to say that you cook a specific luch.
If you include the article, you are enphasizing "cooking" or "lunch". For example: "Eu cozinho o almoço e ela a janta", or "Eu cozinho o almoço e ele come."
If you exclude the article, you are enphasizing on "cooking lunch", not just cooking nor just the lunch. For example: "Eu cozinho almoço todos os dias."
But portuguese is more flexible and permissive than most other languages. You can say "eu cozinho o almoço" in both cases.
The proper translation for "Eu cozinho o almoço" in English should be "I cook lunch" as a regular thing that one does. "I'm cooking" is the gerund, the action is happening now. In portuguese would be: "Estou cozinhando". But, like someone above said, the phrase " Eu cozinho o almoço" is not common in Portuguese.
Just a suggesstion: Be SURE TO READ THROUGH ALL THE PREVIOUS COMMENTS in the disscusion BEFORE you post another question. Often your question has already been answered. For example, "Flara" gave a BEAUTIFUL explanation about the use of the article here and "dieman" gave an even more practical explanation of why the whole sentence is very uncommon. Thank you everyone for all of your good questions and all of the clear answers!!