For enabling ACPI, I use acpi=ht in the kernel command line (IIUC you complained that ACPI doesn’t work when you set acpi=off ? sounds to me like this is how it should work). I also make sure that the acpi module is loaded and the acpid daemon is working.

To make the fan start and stop manually, I do something like:
$ for fan in /proc/acpi/fan/*/state; do echo "1" > $fan; done
(or “0” to disable). For some reason I have 3 fans in the /proc/acpi/fan and only the last one actually does something I can see – start the CPU fan. I’m not sure what the others do, so I just loop on them as well.

If your fan doesn’t start to work automatically when the temperature reaches the trip point (do cat /proc/acpi/thermal_zone/TZ1/trip_point to make sure what is the real trip point), then you might have some problem (hardware, software ?). If your fan doesn’t stop/start when you change the trip point to be below/above the current temperature, then thats ok – start it manually.