The European Union has agreed to provide Ukraine with a major financial support package to help bolster an economy that has been ravaged by two years of fighting against Russian invaders, with holdout Hungary unexpectedly dropping its opposition to the move at the last minute.