Edit to clarify
As of now, The question is a bit unclear. I imagine you want a largely pressureless fuel system, each cylinder has it's own solenoid pump that replaces the fuel valve on this cylinder and is controlled by your microcontroller. So the fuel supply is not done via supplying a constant pressure to a carburetor that does the mixing, but by directly dosing fuel into each cylinder. Since you are building a sort of direct injection engine, you would likely not control the air flow, but just the fuel flow between lean and stochiometric. In common rail you'd have one high pressure fule lin and solenoid valves, instead the OP wants to have a low pressure line and solenoid pumps.
This is the assumption I base my answer on, if this is not the engine the OP wants to build everything below is moot.
You are looking for (search terms) solenoid driven diaphragm pumps or solenoid driven piston pumps. These exist as metering pumps. The working principle of diaphragm pumps is explained on wikipedia, in metering pumps with solenoids there is only one chamber and the solenoid works in tandem with a spring. AFAICT these are mostly metering pumps for pharmaceutical or chemical industry.
Most of these pumps each stroke will deliver the same volume. Is this acceptable? If not, variable stroke solenoid pumps exist, but I'm not sure you'll find ones where you can adjust the stroke online, on the fly.
I've found one supplier where the volume per stroke is in the µl range. Is this acceptable?
The supplier linked above states a frequency of 0-20Hz for it's pumps, so in a 4 cylinder engine you get max 80 Hz = 4800 rpm a most.
You will likely need some pressure on your fuel line upstream of the pumps or they won'T fill reliably. Maybe it's sufficient to mount the fuel tank a few m up, and have a rather fat pipe and manifold upstream the pumps.
Edit to clarify: For fuel injection, you need a precise control over the volume. In common rail injection, this is achieved by maintaining a constant pressure upstram of tightly timed solenoid valves. When replacing the valves with pumps, you wouldnt need a constant pressure to achieve control over volume flow, 'just' enough pressure to overcome static pressure in cylinder and transport losses. Control over fuel amount would be as god or bad as your pump.
In summary, I think what you need exists but it will be likely expensive and may not work very well in the context of your engine.
Or, if your goal is to become a better mechanical engineer, you invent/design a variable stroke diaphragm metering pump where the stroke volume can be adjusted online, qickly, via analogous signal and the individual strokes are controlled by a digital signal.