if you can mine at aggression 20 you should be able also to mine at aggression 16. but i guess if that's not the case that's not the case.
you could try,
worksize 256
vectors 1
aggression 16
threads_per_gpu 1
sharethreads 32
lookup_gap 2
gpu_thread_concurrency 34816
If the thread concurrency is within the correct range and threads_per_gpu set to 1 you should not get stales with high aggressions. But these cards act really weird and it's hard to tell why they do the things they do sometimes.