Often times these issues can be solved by rebooting ALL computers (iPhones, Macs, etc.) on your local LAN. A reboot causes DHCP to request a lease. And your router should only hand out ones that are unused. So every device should get a unique address
HOWEVER it is possible that you have manually assigned an IP address to one or more devices, so check for that. Make sure all are different and all are on DHCP.
ALSO possible, someone unwanted is on your network. Change the WiFi password just in case.
Failing all of that assign everything a static IP address like this
192.168.1.x
Where x is as follows
between 2 and 254
unique (only one device has any one number)
Your subnet mask is likely 255.255.255.0
Your Gateway is likely 192.168.1.1 (your cable modem or WiFi access point)
Your DNS will vary
The last three should be listed in your network System Preference and will be the same on all devices (only the IP address must be different). Select the connection (WiFi) and click Advanced, then the TCP/IP and DNS buttons. Record the subnet mask, gateway and DNS servers. Then fill that info in on all devices.
It would be a good idea, if you do this, to make a note of all the settings and which device gets which address. Keeping track can be a pain, which is why we have DHCP. It is supposed to hand out all that info automatically. So it is likely that there is a device on your network NOT set to DHCP.
It isn't possible for a website to get the MAC address from an iPhone or iPad.
For that to work, Apple would have to expose that information through JavaScript. They haven't done that. Don't take my word for it though, try a web search for something like "javascript get ios mac address" and you'll find lots of people asking how to do it and lots of people replying that it isn't possible (except in Internet Explorer on Windows in some very specific conditions).
Years ago you could get the MAC address of an iPad or iPhone if you wrote an actual iOS application. However Apple changed that in 2013 with iOS 7 as detailed here.
Best Answer
This completely depends on the app. There's nothing that by default sends identifying in formation about your system to the App developers, the App would have to have been written in order to have this behavior. Depending on the app, however, it's possible that some might.
You didn't mention if you're on iOS or Mac OS. If you're on Mac OS, and you're concerned, or curious, you should consider installing an outgoing firewall like Little Snitch. What this will do is show an alert message asking for permission every time any app tries to send data to the Internet. You can use the Little Snitch network monitor to identify what data is being sent, to determine if your privacy is being violated. You can also prevent the app from sending data at all.
If you wanted to do the same for iOS you could use software on your router, but this is an advanced topic and beyond the scope of this answer.