Sparse reward (and its credit assignment) is a major problem in Reinforcement Learning. However, the issue is not so much that you need to see a reward consistently, but rather learning cant be done until you see a nonzero reward. Because of the Bellman Equation used in the update rules for RL algorithms seeing a reward once is enough to get things started, but many update passes would be required to get the final state or action value (like when using dynamic programming to solve a MDP). The learning isn't dominated by neutral rewards, because the reward is only one part of the Q value update; the other being the expected total discounted reward for the best possible action.
Now in the DQN, things are different because we are randomly sampling from a experience replay memory and not using eligibility traces. Once you see a first reward, there will be a single experience in there that will eventually (hopefully) be sampled, causing an update to the parameters of the network. Now whenever we take a sample from the experience replay, if that samples next state is the starting start (or very similar as we are using function approximation) that led us to see a reward previously, that samples action values will be updated to reflect which action led to that reward. In this way a reward is propagated back through time in terms of the trajectory of states that led to it. Furthermore once you see that reward it will become self-fulfilling in that you will begin to see that reward more often as you realize new parts of the state space can reach known parts that give positive rewards. This is the whole reason we use eligibility traces in traditional RL, but we cant use them in the DQN because we are not learning in an online manner.
An example of this is the game Freeway in which you get a single point for crossing the road. Once you cross the road once, you find that when in the position just below the top you can press 'up' and get a reward. Then when in the position below that you can press 'up' again (as it will have the highest Q value) to lead you to the newly updated state.
Of course its much more complicated with function approximation, as we cant explicitly separate our states and a q value update will affect many other possible states that share features.
So yes reward frequency (and magnitude!) is a problem, and no we don't really a solution.