As Evan already gave a general answer, I like to address two of your sub-questions:
Does IIS flushes logs every X minutes?
http.sys, the kernel mode part of IIS is responsible for logging and it buffers the data in memory before writing it to the log files. I’m not certain but I don’t think it does the flushing every x seconds, more likely after its buffer is getting full.
Does the whole file need to be read when adding a single line?
No, NTFS writes updates to a file into its own cache and then compresses and appends the data asynchronously to the file. Writing to a compressed file is not significantly slower than to an uncompressed file.
So there should be no problem with using NTFS compression on IIS log files.
Sources:
IIS 7 Resource Kit, Chapter 15:Logging – Microsoft Press 2008
Windows Internals 6th Edition Part2, Chapter 12: File Systems Microsoft Press 2012