Yes there is a relationship between them but you may not be able to observe correlation between some of them.
Number of matches and score are definitely proportional, however higher similarity would translate to higher score only if the lengths of the scoring pairs are the same. Gap would have a negative effect on the score but it totally depends on what your scores/penalties are (see BLAST help and documentation).
E-value is basically the likelihood of two random sequences having a certain match score from a given database. So whether or not it is low for a hit depends on the score distribution of the database. Lower E-value does not mean higher similarity. It means that a hit of this score has a low likelihood to be found by random chance. The score distribution is generally skewed towards low scores and so high scores usually have low E-value but what a "high" score is totally dependent on your queries and therefore this statement cannot be generalized.
From BLAST docs:
This formula makes eminently intuitive sense. Doubling the length of
either sequence should double the number of HSPs attaining a given
score. Also, for an HSP to attain the score 2x it must attain the
score x twice in a row, so one expects E to decrease exponentially
with score. The parameters K and lambda can be thought of simply as
natural scales for the search space size and the scoring system