Most devices that can directly write to registers on the ECU through the canbus / obd port are very expensive.
There are cheaper software alternatives that do work over bluetooth obd dongles, but are extremely limited due to the fact it's usually one person doing the programming and ecu's are extremely well engineered items that have many reverse engineering protections built in.
I have a setup that allows me to toggle individual solenoids on the engine and transmission, fuel system solenoids and fuel pump, and I cannot even turn headlights on. I'm sure some of the newer units most likely can to check wiring systems or computer output pins (since they're directly controlled by the ecu on 2010+ (depending on make), but they are most likely $3,000+ handheld systems (Snap On's hardware, which I know can, costs over $8000 USD).
The cheapest, easiest way to do what you would like to do is NOT REINVENT THE WHEEL AND REVERSE ENGINEER 5,000 engineer's work. Take 12v to a relay shield, and run it to the lowbeam or highbeam of the headlights. If you're worried about ecu protection throw in some beefy diodes to protect the ecu from reverse polarity.
Most car headlamps (not HID) are 55W each, so 100W total (100w/12v = 8.33 A), so even small relays should be rated for that. Most automotive grade relays are rated for 12v 20A or 12v 30A, but their actuation current (and voltage) is too high for the arduino without another step (such as a mosfet driver or another relay).
Almost every company sells a small relay shield, or relay board. The wiring for the car would be extremely easy to run inside the car, and be remarkedly similar to installing a set of fog lights as far as what you have to do (and the wiring would be close).
Then you can simply work on the software, and a simple pin high would actuate the headlights.