The answer to your question is "yes, there is such a function $\sigma$". First consider the special case, where $A$ consists of a single point $a\in B$:
By assumption $A\subset \mathrm{Int}(B)$, there exists $r>0$ such that the closed $r$-ball $\overline{B_r}(a)$ around $a$ is contained in $B$. It follows from Brower's fixed point theorem that $f(B_r(a)) \supset B_{r(1-\epsilon)}(a)$ if $|f(x) - x| < r\epsilon$ for all $x\in \partial B_r(a)$. Indeed, if there was $b\in B_{r(1-\epsilon)}(a)\setminus f(B_r(a))$, then the map $g: \overline{B_{r}}(a) \to \overline{B_r}(a)$ given by $g(x) = a+r\frac{f(x) - b}{|f(x) - b|}$ would have no fixed point, contradicting Brouwer's fixed point theorem.
This shows that for $a\in \mathrm{Int}(B)$, there are $0 and $\epsilon(a)>0$ such that $B_{2r(a)}(a)\subset \text{Int}(B)$ and such that $|f(x) - x| < \epsilon(a)$ for all $x\in B_{2r(a)}(a)$ implies $B_{r(a)}(a)\subset f(B)$.
Now let's get to the general case (notation as above): Since $A$ is closed, the set $A_m= A \cap \overline{B_m(0)}\setminus B_{m-1}(0)$ is compact for every $m\in \mathbb N$. Hence the covering $\{B_{r(a)}(a)\}_{a\in A_m}$ of $A_m$ contains a finite subcovering $\{B_{r(a)}(a)\}_{a\in F_m} \subset \{B_{r(a)}(a)\}_{a\in A_m}$ ($F_m\subset A_m$ finite). If we let
$\epsilon_m = \min_{a \in F_m}\, \epsilon(a)$
then $|f(x) - x| < \epsilon_{m} \; \; \forall \, x\in B \cap \overline{B_{m+1}(0)}\setminus B_{m-2}(0)$ implies $A_m\subset \bigcup_{a\in F_m} B_{r(a)}(a) \subset f(B)$.
So all that is needed now is to find a continuous function $\sigma: B \to (0,\infty)$ which satisfies, for every $m \in \mathbb N$: \begin{equation}\tag{$\ast$} \sigma(x) \le \epsilon_m \qquad \forall \, x\in B \cap \overline{B_{m+1}(0)}\setminus B_{m-2}(0) \end{equation} Since this will imply $A_m \subset f(B)$ for all $m\in \mathbb N$, and therefore $A = \bigcup_{m=1}^\infty A_m \subset f(B)$ if $|f(x) - x| < \sigma(x)$. We shall assume (wlog) that $\epsilon_1 \ge \epsilon_2 \ge \epsilon_3 \ge \dots$
$\sigma$ can be constructed in the following way: Let $h:[0,\infty) \to (0,\infty)$ be the continuous (piecewise linear and nonincreasing) function determined by setting $h(m) = \epsilon_{m+2}$ for $m=0,1,2,\dots$ and extending linearly on all intervals $[m,m+1]$. Now set $\sigma(x) := h(\Vert x\Vert),\quad \text{where }\,\Vert x\Vert = \text{Euclidean norm}$ The map $\sigma$ is continuous, positive and for $x \in \overline{B_{m+1}(0)}\setminus B_{m-2}(0)$, we have $\sigma(x) = h(\Vert x\Vert) \le h(m-2) = \epsilon_{m}$ So $(\ast)$ is satisfied and this concludes the proof.