Let my try to summarize and understand:
- You have one controller;
- Different AP groups in the same physical space (so clients can roam between AP's in different groups;
- You assigned to the same SSID in the different AP groups a different client VLAN;
- Mobility is disabled;
If that is the case, the behaviour you experience is perfectly matching your design. When clients roam from one AP to another AP on the same SSID, most clients assume they stay in the same network, so they will not even try to get a new IP address through DHCP. Exception sets the rule, as some clients do. But if a client does not get a new IP address, it will try and try and only after some time find out that there is no more IP connectivity and try to get a new IP.
Having said that; with controllers (tunneling traffic, central breakout) there is no need to set different VLANs on different AP groups. The best practice is to keep the same VLAN across the whole infrastructure or at least the parts of the infrastructure that are close enough to provide roaming.
Some admins use multiple VLANs because they learned that as a best-practice in wired networking to keep the broadcast domains at a controlled size. For (modern enterprise) wireless that is no longer an issue. Please check the Single VLAN Architecture document (http://community.arubanetworks.com/t5/Validated-Reference-Design/Single-VLAN-Architecture-for-WLAN/ta-p/257196) for a more in-depth view on this topic.
If you use Aruba Instant, and need to deploy multiple clusters (to keep the broadcast domain for the AP's on the wired itself controlled small, what a paradox ;-) you should configure L3 roaming to support clients moving across VLANs while roaming.
Did I read your question correct??
What is the underlying reason to disable mobility?