Оба варианта корректны, но имеют разное значение. Вариант «аванс за строительные работы» подразумевает, что аванс выплачивается в качестве частичной оплаты за выполненные работы. В этом случае аванс является собственностью подрядчика и входит в стоимость работ. Вариант «аванс на строительные работы» предполагает, что аванс выплачивается для покрытия расходов на предстоящие работы, то есть это средства, которые будут потрачены на материалы, оборудование и оплату труда рабочих. В этом случае аванс не является частью стоимости работ и должен быть учтен отдельно.
Следует склонять: жители города Абакана.