How to set NACK right after current byte in TWI (ATMega8)
Please don't do that! That's not what I²C ACK/NACK are intended for. They are meant as protocol elements, not as part of the data.

For example, a NACK received on sending the device address will make the host controller signal an "Addressing error", and a NACK received during a transfer of N bytes will make the host controller signal a "Data transmission error" to the calling driver. Meaning, the amount of bytes sent was wrong or the SMBUS checksum failed.

During read transmissions, the NACK usually denotes end of data to receive.

Is it that what you want to signal? I bet not!

EDIT: I give you an example. Please take a look at the DS28E17 Onewire to I²C master bridge. It's an I²C host controller residing on an onewire bus. It does all the I²C communication autonomously and you cannot (you cannot) receive individual ACK/NACKs. You advise that chip to write a number of bytes and it will do so happily. But it won't tell you whether the last bit was ACK or NACK. It can only tell you whether there was an unexpected NACK. So, your slave breaks the protocol and cannot be used behind a DS28E17.