You can check dwell with a multimeter by hooking up to the green one wire connector near the carb, with the meter set to a 6 volt scale.
I would check a few more things before condemning the ECM. Disconnect the scanner and with key on engine off, is the check engine light lit? It should be. When you turn the key on do you hear the MC solenoid ticking at first? You should. Jump out terminal A and B on the ALDL connector and turn the key on. Are you able to flash a code 12? You should be able to do so, this is a normal code with the engine off. Any other codes flashing?
With the scanner disconnected, start the car and check your dwell with the multimeter. I would run the car at high idle and once warmed up, you should see dwell at 30 or so. If you create a vacuum leak, does dwell go down? If you choke off air flow to the carb, does dwell go up? These are all signs that your ECM is working. Another way to test this is to disconnect the MC solenoid at the carb, which should send the carb full rich. Then ground the dwell connector (green terminal) which will drive the MC solenoid full lean when you hook it back up. With engine running at 2500-3000 RPM connect the MC solenoid and see if the RPM changes significantly. By running disconnected you are full rich, and by connecting with the terminal grounded you are going to full lean. If the ECM and the MC solenoid are working correctly, you should see a drop in RPM as you go lean. This test is listed in the 87 manual as a System Performance Check.
Try creating a code and see if the ECM responds. With engine at idle, depress the TPS plunger manually for at least 15 seconds and see if you can set a code 21 for TPS. Disconnect the vacuum signal from your MAP/VAC sensor at idle and see if that sets a code. If you are getting codes it would again indicate that the ECM is functioning.
You mentioned the car was rich when it acted up, how do you know it was rich? You may have a problem with timing advance. When the car is in base time, it can sometimes seem to run rough and will idle low. Have you checked your timing? If so, are you sure you did so correctly, by either jumping pins A and B on the ALDL or disconnecting the under hood 4 wire distributor connector? Another simple test is check idle speed with engine running normally, then again with with A and B jumped. You should see a significant drop in RPM because you are now in base time. If this happens it is just another indicator that the ECM is functioning.
Regarding the scanner problem, when does the scanner act up? Key on engine off, only when engine is running? Does the scanner act normal once you disconnect the MC solenoid?
You mentioned that you checked grounds, I would make sure you test a loaded circuit by checking grounds with key on engine off and then again with engine running. Also I would check power to the ECM, make sure you are getting battery voltage. I think it is a pink/black wire in 87, not sure about 83. Again test this under load with key on engine off and then with engine running.
Any of the solenoids on the car could damage the ECM if they are shorted, MC, EGR, AIR valve. Is your ECM 1225450? Your PROM may be unique to the VIN 9 motor, but according to Rockauto.com, that ECM is used in all 1982-1983 full size and G-body Buicks and Oldsmobiles. These should be really easy to find and even with a VIN Y PROM you car should still run fine.
Hope this helps.