You haven't mentioned timescale.

A few random thoughts.

What you've described is achievable. I think some of the problems (for me, at least) are not the ones that you've identified, but more the physical manufacture, strength and weight.

You mention a height of 20-25cm, and you're clearly concerned about space for the Arduino - perhaps rightly so. You've not mentioned a diameter, or otherwise defined the complete space envelope for the robot, but I'm taking a punt at around a diameter of a similar size of 20cm. Immediately I'd share your concern, and think particularly how you intend to power this robot - onboard battery or flying lead (I guess you're looking for the former). That's likely to present the highest space requirement in the system - be honest with yourself about how long you expect the robot to operate without recharging. You're likely looking at Lipo or lead-acid (cost vs weight). That's going to limit further the available space that you have to play with.

Electronics - that's easy, once you've provisioned for it with adequate space and power :)

In honesty, if I was looking at a system like this I'd probably go federated architecture - have a motor-control Arduino (using motor drivers like John mentioned), a joystick / I/O controller etc, and get them talking over serial interface. That way you're not as compromised by I/O lines on the Arduino, and you can develop and test each subsystem separately. As Andy says - you can pick up cheap knock-off Arduino for very little cost.

Motors - find some cheap steppers, and stepper drivers - it gives you a reasonable degree of positional control without feedback systems. There are problems with keeping the motor coils energised - that impacts the longevity of the robot operation.

In all honesty - get yourself some stiff card or balsa or similar and start making a very basic model of how you envisage the robot could be constructed - with the choices of components that you have available (or, if you can be bothered, use a CAD package to just place the component into 3d space). This will help to visualise the problem space of your build. In terms of build, itself, then if you have access to a 3D printer, it's probably one very good application for this type of work to build the skeleton of the robot to bolt bits to. Buy yourself a couple of cheap nano's, a couple of joysticks, motor controllers and steppers and start playing. Learn from this, grow your self-declared 1% understanding to some level where you can start to better understand the system behaviour that you want and how to implement.

It's an interesting challenge - happy to chat further either here or PM.