"Predicate" vs. "Relation"
Informally, 'relations' are often understood as involving multiple objects: these multiple objects stand (or do not stand) in some relation to each other. So you can see relations as n-place predicates with n greater or equal to 2. A 1-place predicate denoted by something like $P(x)$ we would typically call a 'property'; informally it is a bit awkward to call that a relation ... though many textbooks do allow 1-place relations to keep things mathematically efficient. In fact, you could even consider an atomic sentence like $P$ as denoting a 0-place predicate, but again, few would really call that a relation.
So: 'predicate' is typically a little more general than 'relation'. But I don't think there is really any clear or commonly accepted difference. There is a clear difference between predicates and predicate symbols though!
A predicate is a type of relation.
- A relation is a particular type of set.
- A function is a particular type of relation.
- A predicate is a particular type of function.
The bijection between relations and predicates you have described means they are conceptually interchangeable in most applications. But definitionally, relation is prior to predicate.