There are several things going on.
First, are you sure your upstream is actually a /25?
This is unusual for most home router configurations, especially those from ISPs (almost always /24).
It's okay if it is, but you should check the upstream because consistency is important.
Aside from that, you need to add DNS to the lan interface (likely 192.168.1.1 or the addresses you've used for the guest interface are fine).
Remove the dns entries and the default rout from the guest interface. It should look like this:
config interface 'Guest'
option proto 'static'
option ipaddr '192.168.121.1'
option netmask '255.255.255.0'
Likewise, let's remove the default route line from the iot network. And let's also change the address and subnet so that it cannot possibly conflict with the upstream lan (in the event that it is actually a /24). Make it look like this:
config interface 'iot'
option proto 'static'
option ipaddr '192.168.5.1'
option netmask '255.255.255.0'
And similarly, let's make iot_wan changes to look like this:
config interface 'iot_wan'
option proto 'static'
option ipaddr '192.168.6.1'
option netmask '255.255.255.0'
And delete this entirely:
Next, the DHCP file needs to be adjusted
If your ISP router has an active DHCP server, you must disable the dhcp server on your OpenWrt device for the lan interface. (you can ignore this bit if you've disabled the DHCP server on the ISP router). If you need to disable the lan DHCP server, this is what it should look like:
config dhcp 'lan'
option interface 'lan'
option leasetime '12h'
option dhcpv4 'server'
option start '5'
list dhcp_option '6,192.168.1.2'
list dhcp_option '3,192.168.1.2'
option limit '127'
option ignore '1'
The DHCP server for the guest network is fine, but the following two are invalid:
The reason is that the limit is too high. The limit is not the stopping number, but rather the size of (number of addresses in) the DHCP pool. The range of the DHCP pool is defined by this equation:
[start] to [start + limit - 1]
Now that we changed these networks to /24's, I'd recommend using the default values of start = 100, limit = 150. That makes a range of 100-249.
In the firewall file, remove the wlan-guest device from the guest zone - it should look like this:
config zone
option name 'guest'
option output 'ACCEPT'
option input 'REJECT'
option forward 'REJECT'
list network 'Guest'
Coming backto the question about the upstream network being a /24 or /25 -- if it is a /24, you need to adjust that here:
Remove these lines:
Remove this next section... it won't work with masquerading enabled on the lan zone anyway (if you need access this from lan -> iot, your ISP router needs to be configured differently... let's get this working now and we can adjust if the ISP router supports the settings required):
Same questino about the upstream being a /25 or /24:
and you can delete this section fror the same reason I mentioned before -- it won't work:
Make all those changes, reboot your router and try again. If it doesn't work, post your latest config files. Also, I didn't bother looking at the wireless file -- these need to be right before we worry about any errors there.