What limit the current of a Solar Panel system?
There are many reasons why the current from the solar panel would vary.

First, let's look at the solar panel in isolation, ignoring any effects the batteries could have. When a manufacturer says that a panel is rated for some amount of power, it's done under specific, not entirely realistic conditions called Standard Test Conditions (STC). You probably aren't getting exactly 1kW/m^2 of sunlight and aren't cooling your panel to exactly 25C for your test, so the rated power won't match exactly.

Next, let's consider how your solar panel behaves when connected to a load.

The range of possible output voltages and currents under specific conditions can be plotted as an "IV curve," usually done by connecting some controllable load to the panel at STC. 

Here's an example IV curve for a single cell under some particular amount of light:


From this example with a single cell, you can see that depending on the output voltage when the load is connected, the power delivered to the load will vary. The point where the maximum power is delivered is referred to as the maximum power point. Your Vmp and Imp figures refer to the expected voltage and current when the panel is operating at its maximum power point.

If your charge controller directly connects the panel to the batteries, the panel voltage will follow the battery voltage, so the panel may only briefly operate at its maximum power point (or never, depending on the curve).

Controllers that can adjust the operating point to stay near the maximum power point all the time are known as maximum power point trackers (MPPT).

To summarize:


Your panel's output power will vary depending on ambient conditions, which are probably not the same as the manufacturer's test conditions.
Even if they are the same, your charge controller might not have MPPT functionality, so the output power/current varies with the battery voltage.