I'm thinking more along the lines of the aperture indexing tab.
The slidey looking small protrusion at the (normally) 2 o'colck position(as you look at the camera) right alongside the actual chrome mount.
It can slide from about the 2 o'colck position to about the 11 o'clock position by hand easily and safely. (you can even do so with a body cap still on the camera, but it's fiddly.

This tab follows the lens indexing protrusion, and tells the camera what minimum fstop the lens is at.
Basically if this doesn't work while(ie. broken) you have a CPU lens connected, the camera knows that a lens is connected(because of the CPU), but the indexing tab confuses it.

It's similar to setting an aperture other than the smallest f stop on a lens with an aperture ring.

Two things you can 'try'.

If you have any manual type(non CPU lens) try this and use aperture ring as normal, making sure that the lens is registered in the non CPU lens database in the camera.

if you don't have any non CPU lenses at all that you can mount(doesn't appear so by your gear list), you can use a CPU lens as long as it has an aperture ring for you to set.
You tape up the CPU contacts on the lens so that the camera is fooled into thinking that a lens is not attached.
You then set the aperture you want to try (try something small, like f/8) but again register the lens in the cameras database for it to work.

going by your gear list, the 50mm or 85mm f/1.8 D lens sound perfect for this.

Then you can either take a slow shutter speed test shot, to see if the aperture is stopped down by the camera.
This will determine if the aperture lever actuator in the camera is working at least.

Apparently the aperture indexing tab internals are a common problem for failure. Not that they regularly break, but they are known to stop working.