Let $X$ be uncountable. Then the set of injective functions $f\colon X \to \mathbb{R}$ has empty interior in $\mathscr{C}(X;\mathbb{R})$ Here I'm working with the metric:
$$d(f,g)=\sup_{x \in X}|f(x)-g(x)|.$$
Let's take $h$ in the set and let $\epsilon>0$ be given. I need to prove that there exists another bounded, not injective function $j$ such that $d(j,h)<\epsilon$. 
I would be done if there where two images of $h$ to a distance less than $2\epsilon$. Cause in such case, let them be $h(x_0)$, $h(y_0)$ and suppose that $h(x_0)>h(y_0)$. Then setting $j(x_0)=h(x_0)-\dfrac{h(x_0)-h(y_0)}{2}$ , $j(y_0)=h(y_0) + \dfrac{h(x_0)-h(y_0)}{2}$ and $j(x)=h(x)$ otherwise, we would have the required. 
Suppose, by way of contradiction, that no two images are that near, i.e., in each open interval of lenght $2\epsilon$, there is at most one image of $h$. Since $h$ is bounded, its image can be covered by a finite number of intervals of lenght $2\epsilon$, which implies that there are only finite images of $h$. Finally, like $h$ was injective on an infinite set $X$, this cannot be. 
I have my doubts because I didn't use that $X$ was uncountable, just infinite. Is this proof ok?
 A: I think the key observation is that if $h$ is 1-1 on the uncountable set $X$, then $h[X]$ is an uncountable subset of $\mathbb{R}$. This means that $h[X]$ has a "condensation point" $p$ such that every neighbourhood of $p$ intersects $h[X]$ in uncountably many points. This can be seen by $\mathbb{R}$ being second countable, and so are all its subsets. (see this answer for a proof along those lines). 
Using this $p$ and a $\frac{\varepsilon}{2}$-neighbourhood of $p$, I think your original idea can be made to work, we get 2 points of $h[X]$ close together, and you apply your modification idea.
You really need uncountability : you could have countable set $X$ embedded with image $\mathbb{Z}$ using an injective $h$ and then a $\frac{1}{2}$ open ball around $h$ would only contain injective functions. So there we would have interior points. (This assumes that we use a truncated metric or allow the value $\infty$ for the metric; otherwise we can only use bounded functions and there we would get cluster points again, as bounded sets do have limit points.)
A: The proof looks fine; I suspect that the "uncountable" requirement comes from when you admit functions which are not bounded (and let the metric be infinite when it is required), but if you are working with bounded functions, infinite suffices.
The one note I might make is that you write:

Since $h$ is bounded, there is a finite number of such intervals, which implies that there are finite images of $h$.

which seems somewhat imprecise to me. It might be improved by noting that $h$'s range is within $[-N,N]$ for some $N$ and that this interval can be covered by finitely many intervals of length $2\varepsilon$, hence, by the pigeonhole principle, one interval has multiple images within it.
