Is there anyway to detect this via automation and software? I know if I can get access to the MAC address table on the switch I can see if there's a missing MAC address. I don't know if this is possible on a un-managed network switch? What would be the best way to see if this problem is occurring without physically experimenting with the network (ie unplugging cables and stuff like that)?
DHCP isn't of any help here, but a managed switch usually is.
You cannot really test a cable against the specs without the proper equipment ie. a certifying cable tester. These testers start around 800€, so you might not have one around. Cheaper cable testers test for shorts and continuity only (10-50€), or may also check correct pairings (200-400€). Neither of the cheaper testers fully guarantees proper function in a network, they only show various shades of grey.
As a workaround, you can test the cable in situ whether is does its job (well). For that, error counters on each link end are required. Most hosts have some way of displaying interface error counters; on Windows
netstat -e displays receive errors. On a managed switch there are various methods, depending on vendor and model,
show interface is a common command.
If you don't have a decent switch in place, temporarily plug in a laptop or so. Leaving an unmanaged switch in between your testing hosts effectively hides many of the cable problems from you (as the switch silently drops frames failing FCS verification).
Counters on an idle link don't neccessarily show anything. You need to run a load test, transmitting some kind of test data. Tools like iperf3 can do that, but transmitting a large file also does the trick.
You should note that there are two different kinds of links: dual-simplex ones with a dedicated channel in each direction (e.g. 10BASE-T, 100BASE-TX, most fiber variants) and full-duplex ones with bits flowing in both directions simultaneously (e.g. 1000BASE-T, fiber variants with a B in their name).
Dual-simplex links require explicit testing in both directions for testing both channels. Errors may show up on one side only.
Full-duplex links can be tested in one direction only but should be tested with both directions fully active at the same time as well. Errors should show up on both sides in a somewhat similar amount.
If you alternatively use both kinds of links, test the fastest variant (e.g. good 1000BASE-T testing also guarantees 100BASE-TX to work).