I would start by making sure you have a good ground, both at the negative battery terminal and where it connects to the frame. Disconnect it from the frame make sure the hole the bolt goes into, the bolt and the cable are clean.
On the fuel gauge disconnect the leads at the fuel tank. Put the key in the run position no need to start it. With the wires disconnect the gauge should read empty. Put the wires together and the gauge should read full. If this works as described the problem is in the fuel sender. If it does not work as described the problem is the wiring or in the cluster. With the negative cable disconnected you can pull the connector off the cluster and ohm test the fuel gauge wire. Lets hope it is not the cluster.
As float moves up or down with changes in fuel level, electrical resistance of potentiometer changes accordingly. When tank is full, resistance is low and gauge needle moves to full position. When tank is empty, resistance is high, and gauge needle moves to empty position. Potentiometer resistance between these two positions varies in direct proportion to changes in fuel level. This allows gauge to accurately display quantity of fuel in tank regardless of its level.
Cleaning up the negative terminal could solve the temp gauge. Do what was suggest for the fuel gauge, but this time test the temp sensor.
Temperature sender is a variable resistor that responds to changes in coolant temperature. Low coolant temperatures cause high resistance. High temperatures cause low resistance.