Your average compression is 144 psi and your high / low numbers are within 10 psi which is super spectacular for a 400k engine unless it has already been rebuilt. Its a good thing that your compression tests are reasonable because if they weren't, your original budget of $1000 would be out the door.
Since you can crank the engine, I suggest that you hook up an oil pressure gauge to the port on the side of the block (where the oil pressure switch is) and measure your cranking oil pressure. No point in getting too far ahead with stuff if you can't generate reasonable oil pressure.
You had asked about parts vendors. The Volvo specialist vendors with the largest selection of 140 parts (that I have used) are
CVI - in Sweden
Scandcar - in Demark
Skandix - Germany
VP Autoparts - Sweden and US
I have used IPD and Iroll; but, IPD's selection of vintage parts is getting pretty small. Iroll is OK for parts that are shared with the 1800. High Performance Auto in Torrance CA has a lot of salvage parts when you can't find new and they can also access anything that VP has. If you need something that is out of production and High Performance can't find it, it is probably unobtanium. All of the preceding vendors have been reliable, unlike some others (beware VPD).
Rock Auto sells quite a few parts for the 140s at very good prices. They sell the aluminum Cloyes timing gear for a nice price.
When you checked the heads, did you inspect the rocker arm shoes (valve tip contact point)? At 400k they will almost certainly have grooves worn in them where they contact the valve tips making it impossible to set valve clearance accurately even with a narrow Vee tip feeler gauge inserted from the side. A machinist who has experience with vintage pushrod engines should be able to set up a jig and reprofile the shoes to eliminate the groove. I had all of them done on my B20E for about $40 - 10 years ago.
There was mention made of valvetrain wear. If your cam and lifters are original it is almost certain that there will be spalling on the contact surfaces requiring replacement of the cam and lifters. If you have a dial gauge you can check for this by measuring the valve lift on the valve spring retainer. The actual lift will vary with the cam in the engine; but, if there is significant variation in the lift you know that you have a cam / lifter wear issue.
If you are thinking about replacing the cam, the D cam is from the B20E. The D cam has a fair amount of duration with the result that if you try to idle around 800 RPM it idles with very poor vacuum. At 800 RPM the MAP on my MS2 equipped B20E with the D cam is around 60 kPa and the idle is a little erratic. SU carbs do not idle well with poor vacuum and you may need to crank up the idle speed close to 1000 RPM to get a smooth idle with a D cam. The F cam superseded the D cam. It has the same amount of lift; but, a nudge less duration. It will idle better with SU carbs and for regular driving you may find it has better performance because it has a slightly flatter torque curve. Tinus Tuning
https://www.tinustuning.nl/
grind some pretty nice cams; but, they are on the pricey side. You can email Ben at Tinus, tell him what you have and what you want and he will make some recommendations for you.
You mentioned ignition timing and 16 deg as a static timing setting. If that is 16 BTDC measured at the crankshaft there is no B20 engine that will tolerate that amount of static advance without generating a ping fest. A better starting point would be 10 deg BTDC and depending on the cam, octane rating of the fuel and compression ratio you may need to run less than that. I assume the reference to B20E was just for the distributor? If so, as has been mentioned the B20E distributor does have a negative vacuum advance. The distributor can be run just fine with straight mechanical advance with the vacuum retard port plugged. On an unknown engine I recommend that you disassemble and inspect the mechanical advance mechanism to make sure that the cam and the springs and weights move freely. For what it is worth, some vintages of the B20B engine also ran a distributor with a negative vacuum advance.