You have to remove the old flags via the Python script, too.
Import("env")
old_flags = env["CCFLAGS"]
old_flags = [x for x in old_flags if x != "-mfloat-abi=softfp"]
env["CCFLAGS"] = old_flags
old_flags = env["LINKFLAGS"]
old_flags = [x for x in old_flags if x != "-mfloat-abi=softfp"]
env["LINKFLAGS"] = old_flags
flags = [
"-mfloat-abi=hard"
]
env.Append(CCFLAGS=flags, LINKFLAGS=flags)