The problem is that both you and your colleague are changing the "a.cpp" line, and your VC system doesn't figure out you've both done the same thing as the change is typically lumped with the different change on the following line.
I haven't found a way to configure Qt QCreator to do this but one way of avoiding the specific conflicts your are experiencing is to always add the "\" at the end of the line even for the last item in the list, and then leave two blank lines after the list. e.g.
Original .pro:
HEADERS += \
main.cpp \
a.cpp \
# other stuff
Your new .pro:
HEADERS += \
main.cpp \
a.cpp \
b.cpp \
# other stuff
Then if your colleague commits:
HEADERS += \
main.cpp \
a.cpp \
c.cpp \
# other stuff
Then your VC system should normally resolve the conflict with no help.
I also recommend keeping these .pro file lists (SOURCES=, RESOURCES= etc.) sorted alphabetically, as it helps with keeping the VC commit history easier to understand, and since there seems no way to configure Qt QCreator to do this I tend to always just add new files by editing the .pro in text mode. That way, I find I always have control over what happens. If you're not a control freak like me and find clicking through a bunch of GUI file-browser-ish things liberating (as apposed to annoying), you can first use the GUI stuff and then open the .pro in text mode and tidy the .pro file up after making your changes, but before doing any commits.