It seems to me that it is clear for you the difference between the two "contexts" : the first one is the langauge you are "speaking of", while the second one is the meta-language you are "speaking with".
This distinction cause us no problem if we are studying, let say, latin grammar: we use english (the meta-language) to explain and discuss latin grammatical rules and we do not (usually) use latin words in the english statements we use to explain latin rules, except as citations.
With logic, the situations is, prima facie, exactly the same; there is only a "little difference" : we cannot avoid to "use logic" in explaining logic rules.
So we have exactly the issue you have described; in logic (as the language I'm "speaking of") I want to introduce the logical connectives, like :
$\lor$ ("or") and $\rightarrow$ ("if ..., then _").
In the discussion about them (the language I'm "speaking with") I cannot avoid logical arguments at all; so I must rely on the connectives, like "or" and "if ..., then _", and on their function in natural language.
There is "circularity" ? Of course ...
There is difference in the underlying rules ? This is a thorny issue.
In logic, we regiment the connectives with their truth-functinal definition (in a "classical setting"); this is a sort of "modelling" that introduce a simplification: in a mathematical environment, this simplification is very useful.
Consider, for example, the connective $\lor$: in his truth-functional model, $p \lor q$ is true when both $p$ and $q$ are true; in a "natural language environment" it is not usual to assert an alternative with both disjuncts true. The usual situation where we use "or" is in a sentence like "the ball is white or the ball is black" (the alternative are mutually exclusive) and we perceive as "strange" a sentence like "the ball is black or the ball is black".
In conclusion, we have differences between formal logic and natural language bit , I think, we have no contradiction.
The complex case is with the conditional ($\rightarrow$); in a "informal" argument, when a mathematician assert $A \rightarrow B$, he is using the conditional in a truth-functional way, i.e. he is denying the case when $A$ is true and $B$ is false.
This leave us with three possible cases: $A$ and $B$ both true and the two cases when $A$ is false.
But what is the context of the mathematician's assertion ? Usually, he is asserting a theorem, like (sorry for the triviality) "if $x$ is odd, then $x+1$ is even". In our "formal" way of using the conditional this sentence is true also when $x$ is even. But of course we are not really interested into this eventuality. What we are stating is that there is a condition ("$x$ is odd") that, when fulfilled, licenses us to assert the conclusion ("$x+1$ is even").
The crucial role is played by the act of asserting: in formal logic this "act" is symbolized with the $\vdash$, that plays a crucial role in the rule of inference of modus ponens :
from $\vdash A \rightarrow B$ and $\vdash A$, infer $\vdash B$.
In this case, we assert both $A \rightarrow B$ and $A$; what happens in this case ? The first assertion "exclude" the case when $A$ is true and $B$ false, while the second assertion ($\vdash A$) exclude the two cases when $A$ is false. What remains ? The case when both $A$ and $B$ are true; and this is what we want !